Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Programové řízení serva 2
Vypracoval: Ing. Jaroslav Chlubný Kód prezentace: OPVK-TBdV-AUTOROB-ME-3-JCP-JCH-006 Technologie budoucnosti do výuky CZ.1.07/1.1.38/
2
Arduino – knihovna Servo
Attach – připojení proměnné servo k pinu servo.attach(pin) servo.attach(pin, min, max) nepovinné min a max jsou šířky pulzů v mikrosekundách – min odpovídá minimálnímu úhlu (0°) serva (standardně 544); max největšímu úhlu (180°) serva (standardně 2400) write() – přímé zadání úhlu pro natočení hřídele myservo.write(90) writeMicroseconds() – zadání šířky pulzu myservo.writeMicroseconds(1500) read() – vrací hodnotu úhlu serva ve stupních
3
Otáčení rotoru mezi krajními polohami
Arduino UNO R3
4
Otáčení rotoru mezi krajními polohami
#include <Servo.h> //načtení knihovny servo Servo myservo; // vytvoření objektu pro řízení serva int pos = 0; // proměnná pro uložení polohy serva void setup() { myservo.attach(9); } // připojení serva na pin 9 void loop() { for(pos = 0; pos < 180; pos += 1)//cyklus od 0°do 180°s přírůstkem 1 { myservo.write(pos);// otočení serva do polohy uložené v proměnné pos delay(15); // čekání 15 ms na dosažení polohy serva } for(pos = 180; pos>=1; pos-=1) // cyklus od 180°do 0° { myservo.write(pos);// otočení serva do polohy uložené v proměnné pos delay(15); // čekání 15 ms na dosažení polohy serva
5
Otáčení rotoru mezi krajními polohami
Arduino UNO R3
6
Řízení otáček serva potenciometrem
Servo V zem řídící vstup na D9 Potenciometr V jezdec na analog. vst. Analogová hodnota z jezdce potenciometru převedena na digitální, která pomocí PWM řídí natáčení serva
7
Řízení otáček serva potenciometrem
8
Řízení otáček serva potenciometrem
AnalogRead – přečtení analogové hodnoty ze vstupu Arduino obsahuje 10ti bitový A/D převodník vstupní napětí v rozsahu 0–5 V převede na celá čísla v rozsahu 0–1023 (na jednotku tedy připadá 4.9 mV). Čtení analogového vstupu trvá asi 100 mikrosekund – max frekvence čtení je asi 10 000 krát za sekundu. Př. val = analogRead(analogPin); načte hodnotu z analogPin a uloží do proměnné val map – namapuje jeden rozsah do druhého. Př. val = map(val, 0, 1023, 0, 179); změní rozsah 0–1023 na rozsah 0–179. Funguje i se zápornými čísly – např. y = map(x, 1, 50, 50, -100);
9
Program řízení serva potenciometrem
10
Řízení otáček serva potenciometrem
Arduino UNO R3
11
Použité zdroje Sweep. In: Arduino [online]. [cit ]. Dostupné z: Knob. In: Arduino [online]. [cit ]. Dostupné z:
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.