/* * Sketh_jun1.ino * * Created: 5/17/2014 8:31:51 AM * Author: Алексей */ #include // Название сервоприводов Servo servo1; // клешня Servo servo2; // подъем клешни Servo servo3; // подъем руки Servo servo4; // разворот всей руки unsigned long time; // Крайние точки углов при которых нужно устанавливать лапы //Trimm int s1 = 90; int s2 = 100; int s3 = 120; int s4 = 60; // стоп int pos_stop[1][4]={s1,s2,s3,s4}; // Массив в котором записаны все шаги int LED = 13; // LED connected to digital pin 13 unsigned int x; //переменная unsigned int y; //переменная unsigned int a; //переменная unsigned int b; //переменная unsigned int c; //переменная unsigned int d; //переменная unsigned int e; //переменная void setup() { // Пины сервоприводов servo1.attach(2); // servo1 connected to digital pin 2 servo2.attach(3); // servo1 connected to digital pin 3 servo3.attach(4); // servo1 connected to digital pin 4 servo4.attach(5); // servo1 connected to digital pin 5 // Занимает исходное положение servo1.write(pos_stop[0][0]); pauss_sch (); servo2.write(pos_stop[0][1]); pauss_sch (); servo3.write(pos_stop[0][2]); pauss_sch (); servo4.write(pos_stop[0][3]); pauss_sch (); digitalWrite(LED, LOW); // sets the pin on void loop(); }; //конец программы //Формируем движение void loop() { for ( e=0; e <10; e ++) { pauss_all (); podb_serv ();//поднять кран poda_serv ();//поднять стрелу pauss_all (); pozd_serv ();//развести пальцы //podj_serv ();//cвести пальцы //podv_serv ();//опустить кран pauss_all (); podc_serv ();//повернуть кран по час стр pauss_all (); //podb_serv ();//поднять кран podv_serv ();//опустить кран pauss_all (); podu_serv();//опустить стрелу pauss_all (); podj_serv ();//cвести пальцы //pozd_serv ();//развести пальцы pauss_all (); poda_serv ();//поднять стрелу pauss_all (); podb_serv ();//поднять кран pauss_all (); podz_serv ();//повернуть против часов стр pauss_all (); podv_serv ();//опустить кран pauss_all (); podu_serv();//опустить стрелу pauss_all (); pozd_serv ();//развести пальцы //podj_serv ();//cвести пальцы pauss_all (); }; }; // Стоп void zstop(){ servo1.write(pos_stop[0][0]); pauss_sch () ; servo2.write(pos_stop[0][1]); pauss_sch () ; servo3.write(pos_stop[0][2]); pauss_sch () ; servo4.write(pos_stop[0][3]); pauss_sch () ; }; // cвести пальцы void podj_serv(){ for ( a=20; a <90; a ++) { servo1.write(a); pauss_sch () ; // waits }; }; // развести пальцы void pozd_serv(){ for ( a=90; a >20; a --) { servo1.write(a); pauss_sch () ; // waits }; }; // Поднять стрелу void poda_serv(){ for ( b=100; b >50; b --) { servo2.write(b); pauss_sch () ; // waits }; }; // Опустить стрелу void podu_serv(){ for ( b=50; b <100; b ++) { servo2.write(b); pauss_sch () ; // waits }; }; // Поднять руку void podb_serv(){ for ( c=120; c <160; c ++) { servo3.write(c); pauss_sch () ; // waits }; }; // Опустить руку void podv_serv(){ for ( c=160; c >120; c --) { servo3.write(c); pauss_sch () ; // waits }; }; // поворот void podc_serv(){ for ( d=60; d >15; d --) { servo4.write(d); pauss_sch () ; // waits }; }; // поворот void podz_serv(){ for ( d=15; d <60; d ++) { servo4.write(d); pauss_sch () ; // waits }; }; // void pauss_all (){ for ( y=0; y <300; y ++) { delayMicroseconds(2000); }; y == 0; }; void pauss_sch (){ for ( y=0; y <6; y ++) { delayMicroseconds(2000); }; };