Sadržaj:
- Korak 1: Stvaranje aplikacije na telefonu
- 2. korak: 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: PI i Arduino od maline - Stepenska kontrola Blynk: 7 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Ovaj vodič će vam pokazati kako upravljati koračnim motorom s Arduinom, Raspberry Pi i Blynk aplikacijom.
U lupinastoj ljusci, aplikacija šalje zahtjeve Raspberry Pi -u 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: Stvaranje aplikacije na telefonu
Preuzmite Blynk iz AppStore -a ili GooglePlay -a
Otvorite aplikaciju i stvorite korisnika ili se prijavite putem facebooka.
- Izradite novi projekt
Imenujte svoj projekt: 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 Stvori
Provjerite svoj e -mail za svoj 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 gumba
- Dodajte 1 LCD
- Uredite gumb
imenujte prvu Command1, postavite Pin kao Virtual Pin 1 i postavite način rada 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 igle kao virtualni pin 4 i virtualni pin 5 i postavite način rada na PUSH
2. korak: Pripremite PI
Prvo morate instalirati Node.js. Prije ažuriranja Node.js, svakako 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 instaliraj onoff -g
Korak 3: Kreiranje vašeg projekta
Počnite promjenom direktorija (naredba cd) u imenik pi
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 izradu opisa projekta (package.json)
npm init
Samo upišite naziv projekta, autora, verziju itd …
Nakon što to učinite, instalirajte Blynk knjižnicu, onoff knjižnicu i knjižnicu sistemskog spavanja 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, stvorite svoju.js datoteku (tu će se nalaziti vaš kôd). U terminal unesite sljedeće
nano MyProject.js
Nakon što 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š gumb Command1 u aplikaciji
var v2 = novi blynk. VirtualPin (2); // ovo je vaš gumb CW u aplikaciji
var v3 = novi blynk. VirtualPin (3); // ovo je vaš gumb CCW u aplikaciji
var v4 = novi blynk. VirtualPin (4); // ovo je vaš LCD redak 1 u aplikaciji
var v5 = novi blynk. VirtualPin (5); // ovo je vaš LCD red 2 u aplikaciji
v1.on ('write', function (param) // Potražite gumb Command1 u aplikaciji
{
if (param == 1) // Ako je gumb pritisnut (što je 1), učinite sljedeće
{
v4.write ("Izvršavanje"); // Napišite "Izvršavanje" u prvi redak LCD -a
v5.write ("Naredba"); // Napišite "Command" u drugi redak LCD -a
command1.writeSync (1); // Postavite GPIO18 (koji je varijabla command1) na 1 (HIGH)
spavanje (4000); // Pričekajte 4 sekunde
command1.writeSync (0); // Postavite GPIO18 (koji je varijabla command1) na 0 (LOW)
v4.write ("Gotovo"); // Napišite "Gotovo" u prvi redak LCD -a
v5.write (""); // Napišite "" (ništa) u drugi redak LCD -a
v1.pisati (0); // Upišite 0 na gumb Command1, koji će ga vratiti u položaj OFF
}
});
v2.on ('write', function (param) // Provjeri CW gumb u aplikaciji
{
if (param == 1) // Ako je gumb pritisnut (što je 1), učinite sljedeće
{
commandCW.writeSync (1); // Postavite GPIO23 (koji je varijabla commandCW) na 1 (HIGH)
}
else if (param == 0) // Ako gumb nije pritisnut (što je 0), učinite sljedeće
{
commadCW.writeSync (0); // Postavite GPIO23 (čija je varijabla commandCW) na 0 (LOW)
}
});
v3.on ('write', function (param) // Provjerite ima li CCW gumb u aplikaciji
{
if (param == 1) // Ako je gumb pritisnut (što je 1), učinite sljedeće
{
commandCCW.writeSync (1); // Postavite GPIO24 (koji je varijabla commandCCW) na 1 (HIGH)
}
else if (param == 0) // Ako gumb nije pritisnut (što je 0), učinite sljedeće
{
commandCCW.writeSync (0); // Postavite GPIO24 (koji je varijabla commandCCW) na 1 (HIGH)
}
});
Spremite 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 (većinu vremena greške su tipkarske pogreš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 s: blynk-cloud.com 8441
SSL autorizacija …
Ovlašteni
Korak 5: MyProject u Arduinu
U redu, sada imamo 2/3 stvari dovršene!
Sada samo trebamo napisati neki kod za Arduino.
- Izradite novu Arduino skicu i upišite sljedeći kod.
#uključi
#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 Koraci2Take;
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 poduzimati ništa
}
drugo
{
ExecutionFunction ();
}
if (CommandCW == 1)
{
small_stepper.setSpeed (700);
mali_korak.korak (-1);
odgoda (1);
}
if (CommandCCW == 1)
{
small_stepper.setSpeed (700);
mali_korak.korak (1);
odgoda (1);
}
}
void ExecutionFunction ()
{
Koraci2Uzmi = STEPS_PER_OUTPUT_REVOLUTION / 4; // Rotirajte CCW 1/4 okreta
small_stepper.setSpeed (700);
mali_korak.korak (Steps2Take); // Steps2Take možete zamijeniti bilo kojom vrijednošću između 0 i 2048
kašnjenje (500);
Koraci2Take = - STEPS_PER_OUTPUT_REVOLUTION / 4; // Rotiraj CW 1/4 okreta
small_stepper.setSpeed (700);
mali_korak.korak (Steps2Take); // Steps2Take možete zamijeniti bilo kojom vrijednošću između 0 i 2048
odgoda (2000);
}
Sastavite i prenesite na svoj Arduino.
Sada provjerite jeste li sve ispravno 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čeni:
Procesor PI Vision od maline (SpartaCam): 8 koraka (sa slikama)
Procesor Raspberry PI Vision (SpartaCam): Sustav procesora Raspberry PI Vision za vašeg prvog robota za natjecanje u robotici. O FIRST -uIz Wikipedije, besplatne enciklopedije https://en.wikipedia.org/wiki/FIRST_Robotics_Compe … PRVO natjecanje u robotici (FRC) međunarodno je visoko sch
Kontrola svjetline PWM LED kontrola pomoću tipki, Raspberry Pi i ogrebotina: 8 koraka (sa slikama)
Kontrola svjetline PWM LED kontrola temeljena na tipkama, Raspberry Pi i Scratch: Pokušavao sam pronaći način da svojim učenicima objasnim kako PWM radi, pa sam si postavio zadatak pokušati kontrolirati svjetlinu LED diode pomoću 2 tipke - jedan gumb povećava svjetlinu LED -a, a drugi ga prigušuje. Za program
PI kamera od maline i Zvijezda smrti Death Control: 5 koraka (sa slikama)
Raspberry PI kamera i kontrola svjetla Death Star: Kao i uvijek, želim izgraditi uređaje koji su korisni, rade robusno i često čak i poboljšanja u usporedbi s trenutnim rješenjima. Evo još jednog sjajnog projekta, izvorno nazvanog Shadow 0f Phoenix, Raspberry PI štit u suradnji s
Spremnik za maline s web sučeljem i video streamingom: 8 koraka (sa slikama)
Spremnik malina s web sučeljem i video streamingom: Vidjet ćemo kako sam realizirao mali WiFi spremnik, sposoban za daljinsko upravljanje Webom i video streaming. Ovo je namjera da bude vodič koji zahtijeva osnovno znanje o elektroničkom i softverskom programiranju. Iz tog razloga sam odabrao
Božićno drvce od maline Pi: 6 koraka (sa slikama)
Božićno drvce Raspberry Pi: Jeste li ikada poželjeli imati potpunu kontrolu nad svojim božićnim svjetlima? Ovaj vodič će otkriti točne korake za izradu božićnog drvca s napajanjem Raspberry Pi, ANAVI Light pHAT i jeftinom 12V RGB LED trakom. Ovo definitivno nije najjeftinije