Мазмұны:
- 1 -қадам: телефонда қосымшаны құру
- 2 -қадам: PI -ге дайындық
- 3 -қадам: Сіздің жобаңызды құру
- 4 -қадам: MyProject.js
- 5 -қадам: Arduino бағдарламасындағы MyProject
- 6 -қадам: Сымдарды жалғау
- 7 -қадам: Міне
Бейне: Raspberry PI & Arduino - Blynk Stepper Control: 7 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:27
Бұл оқулық сізге Arduino, Raspberry Pi және Blynk қосымшасы бар қадамдық моторды қалай басқаруға болатынын көрсетеді.
Жаңғақ қабықшасында бағдарлама Raspberry Pi -ге виртуалды түйреуіштер арқылы сұраныс жібереді, содан кейін Pi Arduino мен Arduino -ға HIGH/LOW сигналын жібереді, содан кейін қадамдық қозғалтқышпен айналысады.
Менің ойымша, бұл әдісті қолдану оңай, өйткені адамдардың көпшілігі Raspberry Pi -де node.js емес, Arduino -мен жұмыс істеуге дағдыланған.
Бұл үшін қажет компоненттер:
- Raspberry PI (мен Raspberry Pi 3 моделін қолданамын b)
- Arduino (мен Arduino Nano қолданамын)
- Серво моторы (мен оның контроллерімен 28BYJ-48 5VDC қолданамын)
- Кейбір секіргіш сымдар
- Қуат көзі (5VDC 2A.)
Arduino нобайы мен Node.js коды жүктеуге болады. Тек файлдарды іздеңіз.
1 -қадам: телефонда қосымшаны құру
Blynk бағдарламасын AppStore немесе GooglePlay -ден жүктеп алыңыз
Қолданбаны ашып, пайдаланушы жасаңыз немесе Facebook -ке кіріңіз.
- Жаңа жоба жасаңыз
Жобаңызды атаңыз: MyProject
Құрылғыны таңдаңыз: Rasapberry Pi 3 B
Қосылу түрі: Wi -Fi (немесе сіздің Pi желіңізге қосылған болса, Ethernet)
- Жасау түймешігін басыңыз
Token үшін электрондық поштаны тексеріңіз
(бұл 3aa19bb8a9e64c90af11e3f6b0595b3c сияқты)
Бұл таңбалауыш сіздің қазіргі қолданбаға қосылған. Егер сіз басқа қолданба жасасаңыз, сіз басқа таңбаны жасайсыз.
Қолданбада келесі виджеттерді қосыңыз (суретті қараңыз)
- 3 түймені қосыңыз
- 1 СКД қосыңыз
- Батырманы өңдеңіз
біріншісін Command1 деп атаңыз, түйреуішті виртуалды түйреуіш 1 деп орнатыңыз және режимді SWITCH ретінде орнатыңыз
екіншісін CW деп атаңыз, түйреуішті виртуалды түйреуіш 2 деп орнатыңыз және режимді PUSH ретінде орнатыңыз
үшіншісін CCW деп атаңыз, түйреуішті виртуалды түйреуіш 3 деп орнатыңыз және режимді PUSH ретінде орнатыңыз
- СКД өңдеңіз
түйреуіштерді виртуалды түйреуіш 4 және виртуалды түйреуіш 5 ретінде орнатыңыз және режимді PUSH күйіне орнатыңыз
2 -қадам: PI -ге дайындық
Алдымен Node.js. орнату қажет, Node.js жаңартпас бұрын ескі нұсқаларды алып тастауды ұмытпаңыз:
Терминалды ашып, теріңіз
sudo apt-get түйін түйіндерін тазарту
node.js -ysudo apt -get автоматты түрде жою
Node.js автоматты орнатылуы Репозиторийлерді қосыңыз:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
Node.js орнатыңыз
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install-essential nodejs -y орнатыңыз
Node.js орнатылғаннан кейін Blynk орнатыңыз
sudo npm blynk -library -g орнатыңыз
sudo npm onoff -g орнатыңыз
3 -қадам: Сіздің жобаңызды құру
Каталогты (cd командасы) pi каталогына өзгерту арқылы бастаңыз
Терминалды ашып, теріңіз:
cd/home/pi/
Содан кейін сіздің жобаңыз болатын каталогты жасаңыз
mkdir MyProject
MyProject каталогын өзгертіңіз, Терминалға келесіні теріңіз
CD MyProject
Каталогтың мазмұнын тексеріңіз (ол бос болуы керек). Терминалға келесілерді енгізіңіз
ls
Содан кейін, жобаның сипаттамасын жасау үшін келесіні теріңіз (package.json)
npm бастамасы
Жобаның атын, авторын, нұсқасын және т.
Бұл аяқталғаннан кейін Blynk кітапханасын, қосылу кітапханасын және жүйелік ұйқы кітапханасын ЖОБА каталогына орнатыңыз. Терминалға келесіні теріңіз
npm blynk-library --save орнатыңыз
npm onoff --save орнатыңыз
npm жүйесін орнатыңыз-ұйқы-сақтаңыз
Соңында.js файлын жасаңыз (Бұл жерде сіздің кодыңыз болады). Терминалға келесіні теріңіз
нано MyProject.js
Бұл команданы орындағаннан кейін нано (терминалды мәтіндік редактор) ашылады.
4 -қадам: MyProject.js
Нанода келесі код жолдарын жазыңыз
var Blynk = талап ету ('blynk-library');
var AUTH = '******************'; БҰЛ СІЗДІҢ ЖЕТЕКШІҢІЗ
var blynk = жаңа Blynk. Blynk (AUTH);
var Gpio = талап ету («өшіру»). Gpio,
command1 = new Gpio (18, 'out'), // Arduino D2 қосылады
commandCW = new Gpio (23, 'out'), // Arduino D3 -ке қосылады
commandCCW = жаңа Gpio (24, 'шығу'); // Arduino D4 қосылады
var sleep = қажет ('system-sleep');
var v1 = new blynk. VirtualPin (1); // бұл сіздің бағдарламадағы Command1 түймесі
var v2 = new blynk. VirtualPin (2); // бұл сіздің қолданбадағы CW түймесі
var v3 = new blynk. VirtualPin (3); // бұл сіздің қолданбадағы CCW түймесі
var v4 = new blynk. VirtualPin (4); // бұл сіздің қолданбадағы СКД желісі 1
var v5 = new blynk. VirtualPin (5); // бұл сіздің қосымшадағы 2 -ші СКД желісі
v1.on ('жазу', функция (параметр) // Бағдарламадағы Command1 түймешігін тексеріңіз
{
if (param == 1) // Егер түйме басылса (бұл 1 болса), келесі әрекеттерді орындаңыз
{
v4.write («Орындалады»); // СКД бірінші жолына «Орындалады» деп жазыңыз
v5.write («Пәрмен»); // СКД екінші жолына «Пәрмен» жазыңыз
command1.writeSync (1); // GPIO18 (айнымалы команда1) 1 -ге (ЖОҒАРЫ) орнатыңыз
ұйқы (4000); // 4 секунд күтіңіз
command1.writeSync (0); // GPIO18 (айнымалы команда1) мәнін 0 (LOW) мәніне орнатыңыз
v4.write («Орындалды»); // СКД бірінші жолына «Орындалды» деп жазыңыз
v5.write («»); // СКД екінші жолына «» (ештеңе) жазыңыз
v1.write (0); // Command1 батырмасына 0 жазыңыз, ол оны ӨШІРУ күйіне қайтарады
}
});
v2.on ('жазу', функция (параметр) // Қолданбадағы CW түймесін тексеріңіз
{
if (param == 1) // Егер түйме басылса (бұл 1 болса), келесі әрекеттерді орындаңыз
{
commandCW.writeSync (1); // GPIO23 (бұл айнымалы commandCW) 1 -ге (ЖОҒАРЫ) орнатыңыз
}
else if (param == 0) // Егер түйме басылмаса (ол 0 болса), келесі әрекеттерді орындаңыз
{
commadCW.writeSync (0); // GPIO23 (командалықCW айнымалысы) 0 (LOW) мәніне орнатыңыз
}
});
v3.on ('жазу', функция (параметр) // Қолданбадағы CCW түймесін тексеріңіз
{
if (param == 1) // Егер түйме басылса (бұл 1 болса), келесі әрекеттерді орындаңыз
{
commandCCW.writeSync (1); // GPIO24 (бұл айнымалы командаCCW) 1 -ге (ЖОҒАРЫ) орнатыңыз
}
else if (param == 0) // Егер түйме басылмаса (ол 0 болса), келесі әрекеттерді орындаңыз
{
commandCCW.writeSync (0); // GPIO24 (бұл айнымалы командаCCW) 1 -ге (ЖОҒАРЫ) орнатыңыз
}
});
Оны сақтап, нанодан шығыңыз
- CTRL+O сақтау
- CTRL+X пернелер тіркесімін жабу
Сіз Raspberry Pi -мен жұмыс жасайсыз.
Енді оны қателіктердің бар -жоғын тексеру үшін тексеріңіз (көбінесе Typo қателері)
Оны тексеру үшін терминалға келесіні теріңіз
MyProject.js түйіні
Сіз осындай көріністі алуыңыз керек
OnOff режимі
Қосылу: blynk-cloud.com 8441
SSL авторизациясы…
Рұқсат етілген
5 -қадам: Arduino бағдарламасындағы MyProject
Жақсы, енді бізде 2/3 жұмыс аяқталды!
Енді бізге Arduino кодын жазу керек.
- Arduino жаңа эскизін жасаңыз және келесі кодты теріңіз.
#қосу
32. ҚАДАМДАРДЫ_АЯҚТАУ_РЕВОЛЮЦИЯСЫН анықтаңыз
#depine STEPS_PER_OUTPUT_REVOLUTION 32 * 64 // 2048
// Ілмекті байланыстар 8, 9, 10, 11 түйреуіштермен байланыстырылуы керек
// In1, In2, In3, In4 мотор жүргізушісіне
// Содан кейін түйреуіштер осында 1-3-2-4 ретімен енгізіледі, бұл дұрыс реттілік үшін
Кіші қадам (STEPS_PER_MOTOR_REVOLUTION, 8, 10, 9, 11);
int Steps2Take;
int Command1;
int CommandCW;
int CommandCCW;
жарамсыз орнату ()
{
pinMode (2, INPUT);
pinMode (3, INPUT);
pinMode (4, INPUT);
// (Степпер кітапханасы түйреуіштерді шығыс ретінде орнатады)
}
бос цикл ()
{
Command1 = digitalRead (2);
CommandCW = digitalRead (3);
CommandCCW = digitalRead (4);
егер (Command1 == 0)
{
//ештеңе істеме
}
басқа
{
ExecutionFunction ();
}
егер (CommandCW == 1)
{
small_stepper.setSpeed (700);
Small_stepper.step (-1);
кешіктіру (1);
}
егер (CommandCCW == 1)
{
small_stepper.setSpeed (700);
кіші_қадам.қадам (1);
кешіктіру (1);
}
}
void ExecutionFunction ()
{
Steps2Take = STEPS_PER_OUTPUT_REVOLUTION / 4; // CCW 1/4 бұру
small_stepper.setSpeed (700);
small_stepper.step (Steps2Take); // Steps2Take мәнін 0 мен 2048 аралығындағы кез келген мәнмен ауыстыруға болады
кешіктіру (500);
Steps2Take = - STEPS_PER_OUTPUT_REVOLUTION / 4; // CW 1/4 бұру
small_stepper.setSpeed (700);
small_stepper.step (Steps2Take); // Steps2Take мәнін 0 мен 2048 аралығындағы кез келген мәнмен ауыстыруға болады
кешіктіру (2000);
}
Ардуиноға жинап, жүктеңіз.
Енді бәрін дұрыс қосқаныңызға көз жеткізіңіз! Сымдарды қосудың келесі қадамын қараңыз.
6 -қадам: Сымдарды жалғау
Arduino D3 -ті RaspberryPi GPIO18 -ге қосыңыз (бұл шын мәнінде 12 -ші пин)
Arduino D4 -ті RaspberryPi GPIO23 -ке қосыңыз (бұл шын мәнінде 16 -шы пин)
Arduino D4 -ті RaspberryPi GPIO24 -ке қосыңыз (бұл шын мәнінде 18 -пин)
Arduino GND -ті RaspberryPi GND -ге қосыңыз (6 -түйреуіш)
Arduino D8 -ді Step1 Controller In1 -ге қосыңыз
Arduino D9 In2 қадамдық контроллеріне қосыңыз
Arduino D10 In3 қадамдық контроллеріне қосыңыз
Arduino D11 In4 қадамдық контроллеріне қосыңыз
5VDC -ті Arduino, Raspberry Pi және Stepper Controller -ге қосыңыз
7 -қадам: Міне
Бейнежазбаны қараңыз, және сіз аяқтауыңыз керек!
Рахмет және ләззат алыңыз!
Ұсынылған:
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Робот Сегуидор Де Луз: 26 қадам (суреттермен)
Ромео: Драйверлерді басқару жүйесіндегі драйверлердің қосылуы - роботтар Сегуидор Де Луз: DFRobot -тың сенсорлық сигналдары, сенсорлық сигналдар, сонымен қатар DFRobot -тың кез келген нұсқасы. мотоциклдер мен сервистердің роботтық прототиптері үшін өте қолайлы
Totoro жобасы - IoT & MQTT & ESP01: 7 қадам (суреттермен)
Totoro жобасы - IoT & MQTT & ESP01: Totoro жобасы - бұл көптеген басқа формаларда көшіруге болатын жақсы IoT жобасы. Case AdafruitIO) .MQTT және Ad үшін пайдалы нұсқаулық
1979 Bang & Olufsen Raspberry Pi Интернет радиосы: 10 қадам (суреттермен)
1979 Bang & Olufsen Raspberry Pi Интернет радиосы: Бұл 1979 жылғы Bang & Olufsen Beocord 1500 кассеталық магнитофоны мен Raspberry Pi дербес интернет -радиоға айналдырдым. Аналогты VU есептегіштері Pi арқылы DAC (Digital to Analogue Converter) тізбегі арқылы басқарылады, ағымдағы уақыт бойынша
Wi-Fi басқарылатын FPV Rover роботы (Arduino, ESP8266 және Stepper Motors көмегімен): 11 қадам (суреттермен)
Wi-Fi басқарылатын FPV Rover роботы (Arduino, ESP8266 және Stepper Motors-пен): Бұл нұсқаулықта ESP8266 Wi-Fi модуліне қосылған Arduino Uno көмегімен wi-fi желісі арқылы қашықтан басқарылатын екі дөңгелекті роботты қалай құрастыру керектігі көрсетілген. және екі сатылы қозғалтқыш. Роботты қарапайым интернет беттерінен басқаруға болады
IOT BIT (ресми түрде PiAnywhere V1.31 ретінде белгілі) 4G & LTE Hat Raspberry Pi үшін: 10 қадам (суреттермен)
IOT BIT (ресми түрде PiAnywhere V1.31 ретінде белгілі) 4G & LTE Hat Raspberry Pi үшін: IOT BIT 4G & Raspberry Pi4G үшін LTE Hat (100 мбит/ с төмен/ 50 мбит/ с жоғары) - Сіздің таңқурай пи үшін ультра жылдам интернет байланысы, үлкен жүктеулер мен бейне ағыны үшін тамаша .TheIOT BIT 4G & Raspberry Pi Beta провайдеріне арналған LTE Hat