• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Sterowanie silnikiem krokowym z wykorzystaniem Raspberry [JavaScript, Note.js] - Sygnał PTO

Object Storage Arubacloud
0 głosów
580 wizyt
pytanie zadane 20 października 2019 w JavaScript przez Oskar Szkurłat Bywalec (2,780 p.)

Cześć, mam doświadczenie, jako programista sterowników PLC (Siemens), chciałbym spróbować się "przesiąść" na Malinkę (hobbistycznie). Mam dostęp do Raspberry Pi 2 B+ i pisałem kiedyś bardzo dużo w języku JavaScript (do użytku stron). Z tego powodu postanowiłem zaprogramować swój projekt właśnie na Raspberry Pi, a do tego z użyciem Note.js. 
W moim projekcie potrzebuję sterować 4 silnikami krokowymi (a dokładniej sterownikami silników). Tak więc potrzebuję wygenerować sygnał typu PTO (Pulse Train Output), czyli z dynamicznie zmieniającą się (programowo) wartością częstotliwości wystawiania sygnału na wyjście o jak najmniejszej szerokości pulsu (stałym wypełnieniem).

Czy mój tok rozumowania działania malinek jest poprawny, zgodnie z poniższym kodem?

const Gpio = require('pigpio').Gpio;
const pulse = new Gpio(17, {mode: Gpio.OUTPUT}); //Pulse
const dir = new Gpio(18, {mode: Gpio.OUTPUT}); //Direction (Bool)
sint speed; //Wartość z innej funkcji
bool dir; //Wartość z innej funkcji
 
If (speed != 100){
setInterval(() => {
pulse.digitalWrite(1)
If (pulse > 0) {
pulse.digitalWrite(0)
}
}, speed);
}

Czy z każdym interwałem cyklu wartość zostanie ustawiona na 1 i zajdzie impuls, czy zostanie wyzerowany zanim wskoczy? Należy zastosować pewnego rodzaju delay? W jaki sposób najlepiej to wykonać, tak aby sterownik pracował z największą częstotliwością? Zmienna speed będzie przyjmować wartości od 1 do 100. Gdzie, np. 100 oznacza brak pracy silników. (Prędkość przeskaluję potem do rzeczywistej zadanej).

Z góry dziękuję za odpowiedź.

1 odpowiedź

+1 głos
odpowiedź 20 października 2019 przez DawidK Nałogowiec (37,910 p.)
wybrane 19 kwietnia 2022 przez Oskar Szkurłat
 
Najlepsza

Zainteresuj się platformą johnny-five jest dosyć prosta i ma moim zdaniem bardzo dobrą dokumentację.

Dokumentację dla servo znajdziesz po tym linkiem:

http://johnny-five.io/api/servo/ 

Robiłem kilka mini-projektów wykorzystując to platformę, ale na płytce arduino uno + node.js z tego co widać na liście wspieranych płytek jest też Raspberry Pi

http://johnny-five.io/platform-support/

Jeżeli chodzi o polskojęzyczne materiały to jest chyba tylko książka "Roboty Javascript od podstaw" , której raczej nie polecam.

komentarz 20 października 2019 przez Oskar Szkurłat Bywalec (2,780 p.)

Dziękuję za informację, bardzo ciekawa "biblioteka".
http://johnny-five.io/examples/stepper-driver/
Jak czytam, to nawet dokładnie o ten przypadek mi chodziło (chyba).
Jak będę miał możliwość to przetestuję, dzięki jeszcze raz.

Podobne pytania

0 głosów
1 odpowiedź 327 wizyt
0 głosów
0 odpowiedzi 430 wizyt
0 głosów
5 odpowiedzi 588 wizyt
pytanie zadane 12 maja 2020 w Offtop przez Munvik Dyskutant (9,350 p.)

92,555 zapytań

141,404 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...