-
Notifications
You must be signed in to change notification settings - Fork 0
Prvý program
V našom prvom programe bude robot hýbať rukou.
Na písanie programu si musíme najprv vytvoriť projekt. Ak neviete ako si vytvoriť projekt, pozrite sa tu.
Na konci článku nájdete Celý program.
V programe sa nachádzajú 2 funkcie - setup() a loop(). Do týchto funkcií budeme písať náš program. Funkcia setup sa stpustí raz, na začiatku behu programu. Tu sa zvyčajne nastavujú rôzne veci(motory, senzory, hodnoty premenných).
// Funkcia setup sa spusti raz.
void setup() {
// Tu je kod na nastavovanie roznych veci(motory, senzory...).
}
// Funkcia loop sa bude stale opakovat.
void loop() {
// Tu je hlavny kod.
}Najprv musíme do programu načítať knižnice na programovanie Šrobka. Knižnice sa načítajú príkazom
#include <MenoKnižnice>. My si načítame tieto knižnice:
// Pridanie kniznic srobka.
#include <Arduino.h>
#include <robot/types.h>
#include <robot/motors.h>Potom si vytvoríme objekt na ovládanie motorov a premennú, ktorá bude držať hodnotu pozície ruky.
Motors motors;
ArmPosition position;Do funkcie setup nám netreba písať nič.
Do loopu budeme písať hlavný kód - robot zdvihne ruku, počká sekundu, dá ju naspäť a znovu počká sekundu. To sa nám bude stále opakovať.
Na pohnutie ľavej ruky použijeme príkaz motors.moveLeftHand(handPosition). Ako parameter mu dáme pozíciu ruky. Príkaz delay(cas) zas počká stanovený čas. Hodnotu času píšeme v milisekundách.
Pozícia ruky (ArmPosition) má viacero hodnôt.
-
armYvertikálna pozícia ramena robota -
armXhorizontálna pozícia ramena robota -
armRotrotácia ruky -
elbowpozícia lakťa -
handRotrotácia zápästia -
handAnglepozícia prstov
Všetky pozície su v uhloch.
Kód v loope vyzerá následujúco:
// Program sa opakuje.
void loop() {
// Nastavenie vertikalnej pozicie lavej ruky na 90 stupnov.
position.armY = 90;
motors.moveLeftArm(position);
// Cakaj 1 sekundu.
delay(1000);
// Nastavenie vertikalnej pozicie lavej ruky na 0 stupnov.
position.armY = 0;
motors.moveLeftArm(position);
// Cakaj 1 sekundu.
delay(1000);
}Práve sme úspešne vytvorili náš prvý program!
// Pridanie kniznic srobka.
#include <Arduino.h>
#include <robot/types.h>
#include <robot/motors.h>
Motors motors;
ArmPosition position;
// Program zbehne raz.
void setup() {
}
// Program sa opakuje.
void loop() {
// Nastavenie vertikalnej pozicie lavej ruky na 90 stupnov.
position.armY = 90;
motors.moveLeftArm(position);
// Cakaj 1 sekundu.
delay(1000);
// Nastavenie vertikalnej pozicie lavej ruky na 0 stupnov.
position.armY = 0;
motors.moveLeftArm(position);
// Cakaj 1 sekundu.
delay(1000);
}