Sadržaj:
- Korak 1: Kreiranje aplikacije na telefonu
- Korak 2: Pripremite PI
- Korak 3: Kreiranje vašeg projekta
- Korak 4: MyProject.js
- Korak 5: MyProject u Arduinu
- Korak 6: Ožičenje
- Korak 7: To je to
Video: Raspberry PI i Arduino - Blynk Stepper Control: 7 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Ovaj vodič će vam pokazati kako kontrolirati koračni motor s Arduinom, Raspberry Pi i Blynk aplikacijom.
U ludnici, aplikacija šalje zahtjeve na Raspberry Pi putem virtualnih pinova, Pi zatim šalje signal VISOKOG/NISKOG na Arduino, a Arduino se zatim bavi koračnim motorom.
Mislim da je lakše koristiti to odobrenje jer je većina ljudi navikla raditi s Arduinom, a ne puno s node.js na Raspberry Pi.
Za to su potrebne komponente:
- Raspberry PI (koristim Raspberry Pi 3 model b)
- Arduino (koristim Arduino Nano)
- Servo motor (koristim 28BYJ-48 5VDC sa svojim kontrolerom)
- Neke kratkospojne žice
- Izvor napajanja (5VDC 2A.)
Arduino skica i kod Node.js dostupni su za preuzimanje. Samo potražite datoteke.
Korak 1: Kreiranje aplikacije na telefonu
Preuzmite Blynk iz AppStore -a ili GooglePlay -a
Otvorite aplikaciju i kreirajte korisnika ili se prijavite putem facebooka.
- Kreirajte novi projekat
Imenujte svoj projekat: MyProject
Odaberite uređaj: Rasapberry Pi 3 B
Vrsta veze: Wifi (ili Ethernet ako je vaš Pi ožičen na vašu mrežu)
- Pritisnite Kreiraj
Provjerite svoj e -mail za token
(izgleda ovako 3aa19bb8a9e64c90af11e3f6b0595b3c)
Ovaj je token povezan s vašom trenutnom aplikacijom. Ako napravite drugu aplikaciju, generirat ćete drugi token.
U aplikaciju dodajte sljedeće widgete (pogledajte sliku)
- Dodajte 3 dugmeta
- Dodajte 1 LCD
- Uredite dugme
imenujte prvu Command1, postavite Pin kao Virtual Pin 1 i postavite Mode kao SWITCH
imenujte drugu CW, postavite pin kao virtualni pin 2 i postavite način rada kao PUSH
trećem imenujte CCW, postavite pin kao virtualni pin 3 i postavite način rada kao PUSH
- Uredite LCD
postavite pinove kao Virtual Pin 4 i Virtual Pin 5 i postavite Mode na PUSH
Korak 2: Pripremite PI
Prvo morate instalirati Node.js. Prije ažuriranja Node.js, obavezno uklonite stare verzije:
Otvorite Terminal i upišite
sudo apt-get čisti čvor čvor nodejs
node.js -ysudo apt -get autoremove
Automatska instalacija Node.js Dodajte spremišta:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
Instalirajte Node.js
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install build-essential nodejs -y
Nakon što je Node.js instaliran, instalirajte Blynk
sudo npm install blynk -library -g
sudo npm install onoff -g
Korak 3: Kreiranje vašeg projekta
Započnite promjenom direktorija (cd naredba) u pi direktorij
Otvorite terminal i upišite:
cd/home/pi/
Zatim stvorite direktorij u kojem će se nalaziti vaš projekt
mkdir MyProject
Promijenite direktorij u MyProject, upišite sljedeće u terminal
cd MyProject
Provjerite sadržaj direktorija (trebao bi biti prazan). Samo upišite sljedeće u terminal
ls
Zatim upišite sljedeće za kreiranje opisa projekta (package.json)
npm init
Samo upišite naziv projekta, autora, verziju itd …
Kada to učinite, instalirajte Blynk biblioteku, onoff biblioteku i system-sleep biblioteku u direktorij VAŠEG projekta. Upišite sljedeće u svoj terminal
npm install blynk-library --save
npm install onoff --save
npm install system-sleep --save
Na kraju, kreirajte svoju.js datoteku (tu će se nalaziti vaš kôd). U terminal unesite sljedeće
nano MyProject.js
Kada izvršite tu naredbu, otvorit će se nano (uređivač teksta terminala).
Korak 4: MyProject.js
U nano, napišite sljedeće redove koda
var Blynk = require ('blynk-library');
var AUTH = '******************'; Ovo je vaš žeton
var blynk = novi Blynk. Blynk (AUTH);
var Gpio = require ('onoff'). Gpio,
command1 = novi Gpio (18, 'out'), // Bit će spojen na Arduino D2
commandCW = novi Gpio (23, 'out'), // Bit će spojen na Arduino D3
commandCCW = novi Gpio (24, 'out'); // Bit će spojen na Arduino D4
var sleep = require ('system-sleep');
var v1 = novi blynk. VirtualPin (1); // ovo je vaše dugme Command1 u aplikaciji
var v2 = novi blynk. VirtualPin (2); // ovo je vaše CW dugme u aplikaciji
var v3 = novi blynk. VirtualPin (3); // ovo je vaše CCW dugme u aplikaciji
var v4 = novi blynk. VirtualPin (4); // ovo je vaš LCD red 1 u aplikaciji
var v5 = novi blynk. VirtualPin (5); // ovo je vaš LCD red 2 u aplikaciji
v1.on ('write', function (param) // Potražite dugme Command1 u aplikaciji
{
if (param == 1) // Ako je dugme pritisnuto (što je 1), uradite sledeće
{
v4.write ("Izvršavanje"); // Napišite "Izvršavanje" u prvi red LCD -a
v5.write ("Naredba"); // Napišite "Command" u drugi red LCD -a
command1.writeSync (1); // Postavite GPIO18 (koja je varijabla command1) na 1 (HIGH)
spavanje (4000); // Sačekajte 4 sekunde
command1.writeSync (0); // Postavite GPIO18 (koji je varijabla command1) na 0 (LOW)
v4.write ("Gotovo"); // Napišite "Gotovo" u prvi red LCD -a
v5.write (""); // Napišite "" (ništa) u drugi red LCD -a
v1.write (0); // Napišite 0 na dugme Command1, čime ćete ga vratiti na položaj OFF
}
});
v2.on ('write', function (param) // Provjeri CW dugme u aplikaciji
{
if (param == 1) // Ako je dugme pritisnuto (što je 1), uradite sledeće
{
commandCW.writeSync (1); // Postavite GPIO23 (čija je varijabla commandCW) na 1 (HIGH)
}
else if (param == 0) // Ako dugme nije pritisnuto (što je 0), učinite sljedeće
{
commadCW.writeSync (0); // Postavite GPIO23 (čija je varijabla commandCW) na 0 (LOW)
}
});
v3.on ('write', function (param) // Provjeri CCW dugme u aplikaciji
{
if (param == 1) // Ako je dugme pritisnuto (što je 1), uradite sledeće
{
commandCCW.writeSync (1); // Postavite GPIO24 (čija je varijabla commandCCW) na 1 (HIGH)
}
else if (param == 0) // Ako dugme nije pritisnuto (što je 0), učinite sljedeće
{
commandCCW.writeSync (0); // Postavite GPIO24 (čija je varijabla commandCCW) na 1 (HIGH)
}
});
Sačuvajte ga i izađite iz nano
- za spremanje CTRL+O
- za napuštanje CTRL+X
Završili ste s Raspberry Pi.
Sada ga isprobajte da vidite ima li kakvih grešaka (najčešće su to Typo greške)
Da biste ga testirali, jednostavno upišite sljedeće u svoj terminal
čvor MyProject.js
Trebali biste dobiti izlaz koji izgleda ovako
Način OnOff
Povezivanje na: blynk-cloud.com 8441
SSL autorizacija …
Ovlašćen
Korak 5: MyProject u Arduinu
U redu, sada imamo 2/3 stvari dovršene!
Sada samo trebamo napisati neki kod za Arduino.
- Napravite novu Arduino skicu i upišite sljedeći kod.
#include
#define STEPS_PER_MOTOR_REVOLUTION 32
#define STEPS_PER_OUTPUT_REVOLUTION 32 * 64 // 2048
// Pin spojevi moraju biti povezani s pinovima 8, 9, 10, 11
// vozaču motora In1, In2, In3, In4
// Zatim se ovdje unose pinovi u nizu 1-3-2-4 radi pravilnog redoslijeda
Steper mali_korak (STEPS_PER_MOTOR_REVOLUTION, 8, 10, 9, 11);
int Steps2Take;
int Command1;
int CommandCW;
int CommandCCW;
void setup ()
{
pinMode (2, INPUT);
pinMode (3, INPUT);
pinMode (4, INPUT);
// (Stepper Library postavlja pinove kao izlaze)
}
void loop ()
{
Command1 = digitalRead (2);
CommandCW = digitalRead (3);
CommandCCW = digitalRead (4);
if (Naredba1 == 0)
{
// ne činiti ništa
}
else
{
ExecutionFunction ();
}
if (CommandCW == 1)
{
small_stepper.setSpeed (700);
small_stepper.step (-1);
kašnjenje (1);
}
if (CommandCCW == 1)
{
small_stepper.setSpeed (700);
small_stepper.step (1);
kašnjenje (1);
}
}
void ExecutionFunction ()
{
Steps2Take = STEPS_PER_OUTPUT_REVOLUTION / 4; // Rotiranje CCW 1/4 okreta
small_stepper.setSpeed (700);
small_stepper.step (Steps2Take); // Možete zamijeniti Steps2Take bilo kojom vrijednošću između 0 i 2048
kašnjenje (500);
Steps2Take = - STEPS_PER_OUTPUT_REVOLUTION / 4; // Rotirajte CW 1/4 okreta
small_stepper.setSpeed (700);
small_stepper.step (Steps2Take); // Možete zamijeniti Steps2Take bilo kojom vrijednošću između 0 i 2048
kašnjenje (2000);
}
Sastavite i prenesite na svoj Arduino.
Sada provjerite jeste li sve pravilno povezali! Pogledajte sljedeći korak za ožičenje.
Korak 6: Ožičenje
Spojite Arduino D3 na RaspberryPi GPIO18 (koji je zapravo pin 12)
Spojite Arduino D4 na RaspberryPi GPIO23 (koji je zapravo pin 16)
Spojite Arduino D4 na RaspberryPi GPIO24 (koji je zapravo pin 18)
Spojite Arduino GND na RaspberryPi GND (pin 6)
Spojite Arduino D8 na Stepper Controller In1
Spojite Arduino D9 na Stepper Controller In2
Spojite Arduino D10 na Stepper Controller In3
Spojite Arduino D11 na Stepper Controller In4
Spojite 5VDC na Arduino, Raspberry Pi i Stepper Controller
Korak 7: To je to
Pogledajte video i trebali biste završiti!
Hvala i uživajte!
Preporučuje se:
Romeo: Una Placa De Control Arduino Para Robótica Con Driver uključuje - Robot Seguidor De Luz: 26 koraka (sa slikama)
Romeo: Una Placa De Control Arduino Para Robótica Con Driver uključuje - Robot Seguidor De Luz: Que tal amigos, siguiendo con la revisiones de placas y sensores, con el aporte de la empresa DFRobot, hoy veremos una placa con prestaciones muy interesante, y es idealan za desarrollo prototipo robóticos i el kontrolu za motore i servo, d
Controllo Motore Stepper Con Drivemall: 5 koraka
Controllo Motore Stepper Con Drivemall: Upravljački i upravljački program Stepper -a s ploče ArduinoQuesto vodič je koristan ako se koristi na Arduinu i koristi se na Drivemall Board -u putem linka za realizaciju Drivermall -a
Arduino Mega Stepper Shield za rješavač Rubiks kocke: 4 koraka
Arduino Mega Stepper Shield za rješavač Rubiks kocke: Prije nekog vremena radio sam na mašini koja automatski rješava sve kodirane 3x3 Rubiks kocke. Moje instrukcije o tome možete vidjeti ovdje. U projektu su koračni pogoni iz polulu korišteni za pogon šest motora. Kako bi dva napravila povezivanje ovih d
Stepper kontroler sa tipkama: 4 koraka
Stepper kontroler sa tipkama:
JEDNOSTAVAN KARBOT -- ARDUINO -- BLUETOOTH CONTROL -- VODIČ: 10 koraka (sa slikama)
JEDNOSTAVAN KARBOT || ARDUINO || BLUETOOTH CONTROL || VODIČ: U OVOM UPUTSTVU POKAZUJEM KAKO NAČINITI JEDNOSTAVNU BOTU KOJU KONTROLIRA VAŠ SMARTPHONE POTREBNO ZA BLUETOOTPORE: ☻ARDUINO☻2X MOTORI ZA MENJAČE ☻HC-05 BLUETOOTH MODULE, KOMPANIJA NA MENJALI, MODEL, MODEL, KAPACIJA, KAPACIJA, KAPACIJA, KAPACIJA, KAPACIJA, KLOP KORISTIO SAM BANKU ENERGIJE