Создайте подзаголовок поста: одно-два предложения, которые кратко передают содержание поста и побуждают продолжить чтение.
Современный специалист электрик должен уметь выполнять такие работы:
- электромонтаж оборудования разного уровня сложности;
- разработка и проектирования схем энергоснабжения;
- выявление причин неисправностей электрооборудования;
- и другие.
Развитие передовых технологий выдвигают повышенные требования специалистам разного уровня, особенно к специалистам энергетикам. Примером одного из таких требований является – освоение роботизированной техники.
Для освоения данного требования, студентами группы пятого курса был собран робот «Рука манипулятор», который выполняет транспортировку объекта с одного конвейера на другой.
Для данного робота были использованы следующие комплектующие:
- алюминивые рычаги(которые устанавливаются на сервоприводы);
- сервоприводы;
- плата Arduino UNO на микроконтроллере ATMEL;
- язык программирования упрощенный С++;
- среда разработки Arduino Genuino.
Работу робота-манипулятора можно посмотреть на видео
Программный код:
#include <VarSpeedServo.h> //подключение библиотеки "регулирование скорости и управление сервоприводам"
VarSpeedServo s1; //Задание имени сервоприводам
VarSpeedServo s2;
VarSpeedServo s3;
VarSpeedServo s4;
VarSpeedServo s5;
VarSpeedServo s6;
void setup() {
s1.attach(2); //подключение первого сервопривода на 2 пин
s2.attach(3); //подключение второго сервопривода на 3 пин
s3.attach(4);// подключение третьего сервопривода на 4 пин
s4.attach(5);// подключение четвертого сервопривода на 5 пин
s5.attach(6); // подключение пятого сервопривода на 6 пин
s6.attach(7); //подключение шестого сервопривода на 7 пин
s1.write(137,255); //выстравление нулей сервоприводов
delay(500);
s2.write(85,255);
delay(500);
s3.write(80,255);
delay(500);
s4.write(80,255);
delay(500);
s5.write(40,70);
delay(500);
s6.write(17,70);
delay(500);
}
void loop() {
//создание цикла для одиночного повторения в одну сторону
for (int i=0;i<1;i++){
s3.write(135,65),s6.write(17,30);
delay(1000);
s1.write(137,50);
delay(500);
s4.write(155,20);
delay(1500);
s1.write(158,50);
delay(500);
s4.write(80,20);
delay(1500);
s3.write(45,65),s5.write(40,30);
delay(1000);
s4.write(153,20);
delay(1500);
s1.write(137,50);
delay(1000);
s4.write(80,20);
delay(1500);
}
//создание цикла для одиночного повторения в ту же сторону
for (int x=0;x<1;x++){
s3.write(135,65), s6.write(130,30);
delay(1000);
s1.write(134,50);
delay(500);
s4.write(155,20);
delay(1500);
s1.write(158,50);
delay(500);
s4.write(80,20);
delay(1500);
s3.write(45,65),s5.write(165,30);
delay(1000);
s4.write(152,20);
delay(1500);
s1.write(134,50);
delay(1000);
s4.write(80,20);
delay(1500);
}
//создание цикла для одиночного повторения в другую сторону
for (int y=0;y<1;y++){
s3.write(45,65), s5.write(165,30);
delay(1000);
s1.write(134,50);
delay(500);
s4.write(154,20);
delay(1500);
s1.write(158,50);
delay(500);
s4.write(80,20);
delay(1500);
s3.write(135,65),s6.write(130,30);
delay(1000);
s4.write(155,20);
delay(1500);
s1.write(134,50);
delay(1000);
s4.write(80,20);
delay(1500);
}
//создание цикла для одиночного повторения в ту же сторону
for (int o=0;o<1;o++)
s3.write(45,65), s5.write(40,30);
delay(1000);
s1.write(134,50);
delay(500);
s4.write(154,20);
delay(1500);
s1.write(158,50);
delay(500);
s4.write(80,20);
delay(1500);
s3.write(135,65),s6.write(17,30);
delay(1000);
s4.write(155,20);