Portalul Labview - vizualizați subiectul - controlul simultan al dumbbell și ds18b20 arduino

Oamenii aveau o astfel de problemă.

Dacă aveți nevoie de LIFA, atunci arătați:

Cunoașterea mai multor principii eliberează cunoașterea multor fapte!

IvanLis. Vă mulțumim pentru răspuns.






Da, trebuie să utilizați LIFA deoarece programul nu va controla numai motoarele, ci și alți senzori și relee.
Nu ați înțeles destul de bine principiul exemplului dat de dvs. Cum se controlează pinii cu două fire? Am folosit 4 pini pe placa uno pentru motor prin intermediul "circuitului de putere".
Înțeleg modul cel mai simplu de a semnala succesiv pe 8 9 10 11 pini și ar trebui să se rotească. Adevărat, ceva nu am reușit să o fac.
Puteți explica principiul exemplului pe care l-ați dat?
Shl într-un Internet căutat pentru astfel de nu a putut găsi. Sau nu am putut înțelege ce am găsit. Lucrez cu fier pentru prima dată, deci experimentul este zero.

hammer a scris: Nu am inteles destul de bine principiul exemplului dat de voi. Cum se controlează pinii cu două fire? Am folosit 4 pini pe placa uno pentru motor prin intermediul "circuitului de putere".


Controlul SD este implementat prin driver, două semnale STEP sunt transmise la acesta DIR (bine, iar solul ar trebui să fie general), și el deja convertește comenzile în semnalele necesare de control al motorului.

ciocan a scris: Am înțeles cel mai simplu mod de a trimite un semnal în mod constant pe 8 9 10 11 pini și ar trebui să se rotească. Adevărat, ceva nu am reușit să o fac.


Înțelegeți un pic greșit, mai întâi trebuie să înțelegeți teoria și modurile, și abia apoi să începeți să implementați. Da, și faceți mai bine în mod consecvent și în părți, deoarece ați decis să faceți managementul la un nivel scăzut și, la sfârșit, după ce totul este verificat și depanat, colectați totul împreună și treceți la testare la scară largă.
Aici sunt nivelele de tensiune care ar trebui să depindă de modul de funcționare al SD:

ciocan a scris (a): Puteți explica principiul exemplului pe care l-ați dat?
Shl într-un Internet căutat pentru astfel de nu a putut găsi. Sau nu am putut înțelege ce am găsit. Lucrez cu fier pentru prima dată, deci experimentul este zero.


Acesta nu este exemplul meu și asta ar explica, trebuie să mă înțeleg. Instalați toate instrumentele, rezolvați-le, găsiți și rulați hardware-ul. dar pentru aceasta nu există nici timp, nici dorință.

Cunoașterea mai multor principii eliberează cunoașterea multor fapte!

Cu un mic cuier, totul funcționează mulțumită.
Acum a apărut o altă problemă. Este necesar să se controleze două palete cu o singură placă, să se citească date de la senzorul de temperatură ds18b20 și să se controleze releul de stare solidă în conformitate cu legea PID.
Problema este evidentă în sincronizarea controlului motorului și interogarea senzorului. Dacă senzorul este interogat separat, temperatura este afișată stabil fără întrerupere. În acest caz, citirea temperaturii este afișată undeva o dată pe secundă.

Portalul Labview - vizualizați subiectul - controlul simultan al dumbbell și ds18b20 arduino







Când introduc acest cod în programul de gestionare a motorului, ieșirea este efectuată de câteva ori cu o întârziere minimă și apoi apare o eroare.
Logica funcționării programului următorul prim cadru este rotit de motor înainte ca butonul de terminare să fie acționat, cel de-al doilea setând poziția inițială necesară, apoi ciclul principal. Prima parte a ciclului rotește motorul la unghiul dorit, cel de-al doilea trebuie să emită temperatura curentă. În teorie, ele nu ar trebui să se intersecteze deloc.
De asemenea, nu-mi plac butoanele cu 2 butoane. Poți să-mi spui cum în astfel de cazuri este o oprire de urgență cu un buton?

ciocan a scris (a): M-am gândit cu peg, totul merge mulțumesc.
Acum a apărut o altă problemă. Este necesar să se controleze două palete cu o singură placă, să se citească date de la senzorul de temperatură ds18b20 și să se controleze releul de stare solidă în conformitate cu legea PID.
Problema este evidentă în sincronizarea controlului motorului și interogarea senzorului. Dacă senzorul este interogat separat, temperatura este afișată stabil fără întrerupere. În acest caz, citirea temperaturii este afișată undeva o dată pe secundă.

Portalul Labview - vizualizați subiectul - controlul simultan al dumbbell și ds18b20 arduino

Când introduc acest cod în programul de gestionare a motorului, ieșirea este efectuată de câteva ori cu o întârziere minimă și apoi apare o eroare.
Logica funcționării programului următorul prim cadru este rotit de motor înainte ca butonul de terminare să fie acționat, cel de-al doilea setează poziția inițială necesară, apoi ciclul principal. Prima parte a ciclului rotește motorul la unghiul dorit, cel de-al doilea trebuie să emită temperatura curentă. În teorie, ele nu ar trebui să se intersecteze deloc.
De asemenea, nu-mi plac butoanele cu 2 butoane. Poți să-mi spui cum în astfel de cazuri este o oprire de urgență cu un buton?

Embedding motor thermometer.vi nu mai este disponibil

Am împărțit o portocală - mulți dintre colegii noștri.

Nu prea înțeleg de ce programul va trece printr-un ciclu și se va opri. În ultimul cadru, este organizată o buclă, în timp ce este în esență infinită. Toate cele anterioare sunt necesare doar pentru poziționarea inițială a poziției arborelui motorului. Fără o analiză a temperaturii, totul funcționează bine. Singura problemă este că programul rulează a doua oară. Prima dată când apare o eroare Eroare -1073807343 a apărut la VISA Clear în interfața LabVIEW pentru Arduino.lvlib: Init.vi-
Dacă re-executați totul funcționează corect, adevărul funcției de interogare a senzorului de temperatură funcționează corect de 3 ori și apoi se întâmplă eroarea. A avut loc un timp de așteptare în timp ce sa încercat citirea formularului Arduino.
Cu ocazia mașinilor de stat voi încerca să-mi dau seama ce structură nu am folosit.

Un alt lucru care mi-a prins ochiul a fost butonul Stop al primului ciclu în afara primului ciclu. De ce?


Restul de încercări de a sincroniza sincronizați opriți lucrul cu un singur buton.
Despre inițierea pe ecran. Încercat fără ea, că ceva 5003 error vylazit în mod constant.
Înțeleg astfel problema în desincronia dintre labview și arduino. Prin urmare, dacă placa arduino se inițializează în bucla, atunci eroarea nu are timp să se acumuleze.

O altă problemă cu care nici nu se poate da seama de ce prima dată sau când nu se poate conecta la arduino întotdeauna prima dată o eroare. După aceasta, trebuie să scoateți cablul USB de la port pentru ao reporni și să porniți programul. Acest lucru se întâmplă întotdeauna, de exemplu, dacă opriți operația de vizualizare în laborator și nu apăsați stopul din program. Ie dacă Arduin nu a venit să comanda să o oprească și să rămână în modul de așteptare, dacă nu există nimic mai mult care să nu reacționeze, nu salvează nici măcar resetarea butonului. Poate cineva să știe cum să rezolve o astfel de problemă?

hammer a scris: O altă problemă cu care nici nu se poate da seama de ce prima dată sau când nu se poate conecta la arduino întotdeauna prima dată o eroare. După aceasta, trebuie să scoateți cablul USB de la port pentru ao reporni și să porniți programul. Acest lucru se întâmplă întotdeauna, de exemplu, dacă opriți operația de vizualizare în laborator și nu apăsați stopul din program. Ie dacă Arduin nu a venit să comanda să o oprească și să rămână în modul de așteptare, dacă nu există nimic mai mult care să nu reacționeze, nu salvează nici măcar resetarea butonului. Poate cineva să știe cum să rezolve o astfel de problemă?


Probabil sesiunea nu se apropie de dispozitiv. Puteți încerca să setați caseta de selectare din setări, așa cum este recomandat aici - viewtopic.php? F = 21t = 8015p = 64178hilit = Visa # p64198

Am împărțit o portocală - mulți dintre colegii noștri.







Trimiteți-le prietenilor: