roboforum.ru

Технический форум по робототехнике.

Простейший вариант тележки

Наше хобби — конструировать и программировать.
Демонстрация готовых роботов и устройств построенных своими руками.

Простейший вариант тележки

Сообщение lenz » 29 май 2010, 11:09

Здраствуйте. Меня зовут Ленар мне 23 года. Ваш форум читаю уже достаточно давно.
И все таки решил выложить свое творение тоже.
Скажем так тележка для начинающих.
Она собрана из старого отечественного металлического конструктора, два сервопривода от самолета, колеса от того же самолета, и плата mrc-40 с http:\\robozone.su
Язык программирования выбран bascom-avr. Как самый простой :)

L1020776.jpg
внешний вид

L1020775.jpg
MRC 40 c доработками

L1020773.jpg
крепление серв



В сервоприводах удалены переменные резисторы, и установлены постоянники.

исходный код программы управления. Пример управления с пульта ду от телевизора RC5
Код: Выделить всёРазвернуть
$regfile = "m32def.dat"
$crystal = 14745600
$baud = 19200
$hwstack = 32
$swstack = 10
$framesize = 40
$lib "mcsbyte.lbx"

Config Servos = 2 , Servo1 = Portc.2 , Servo2 = Portc.3 , Reload = 10       ', Timer = Timer1
Config Rc5 = Pina.7 , Timer = 2
Dim Address As Byte , Command As Byte
Config Portc = Output


Enable Interrupts

Servo(1) = 113                                              'средняя точка сервы
Servo(2) = 113                                              'средняя точка сервы

Dim I As Byte
Dim A As Byte , B As Byte , C As Byte

A = 113

Do
Getrc5(address , Command)
If Address = 0 Then
     Command = Command And &B01111111
     Print Address ; "  " ; Command
     If Command = 32 Then                                   'прямо
      Servo(1) = A + 50
      Servo(2) = A - 50
     End If
     If Command = 33 Then                                   'назад
      Servo(1) = A - 50
      Servo(2) = A + 50
     End If
     If Command = 16 Then                                   'влево
      Servo(1) = A
      Servo(2) = A - 50
     End If
     If Command = 17 Then                                   'вправо
      Servo(1) = A + 50
      Servo(2) = A
     End If
     If Command = 12 Then                                   'выключить питание
      Powerdown
     End If
Else
      Servo(1) = A                                          'стоп
      Servo(2) = A                                          'стоп
End If
Loop


Тележка ездит все замечательно, но теперь я задумался а как же более точно синхронизировать левый и правый привод? Может кто нибудь сталкивался?
Последний раз редактировалось lenz 29 май 2010, 11:24, всего редактировалось 1 раз.
Аватара пользователя
lenz
 
Сообщения: 9
Зарегистрирован: 09 янв 2009, 15:33
Откуда: Татарстан - Елабуга
Skype: lmahmutov
прог. языки: Avr Bascom, VB 6.0
ФИО: Махмутов Ленар

Re: Простейший вариант тележки

Сообщение blindman » 29 май 2010, 11:19

Фотографии надо бы уменьшить, нет там ничего такого, чтобы требовалось 10 мегапикселей и 4.5 мегабайта
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!

Аватара пользователя
blindman
 
Сообщения: 4130
Зарегистрирован: 29 апр 2008, 21:15
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич

Re: Простейший вариант тележки

Сообщение pashteet » 29 май 2010, 11:19

Можно использовать энкодеры. Можно определить экспериментально при какой частоте сервоприводы неподвижны и использовать одинаковое (или по экспериментировать) приращение для обеих серв.
Аватара пользователя
pashteet
 
Сообщения: 930
Зарегистрирован: 28 авг 2009, 12:50
Откуда: Волжский
Skype: pashok0988
ФИО: Павел Петрович

Re: Простейший вариант тележки

Сообщение avr123.nm.ru » 29 май 2010, 14:08

lenz писал(а):решил выложить свое творение тоже.


Поздравляю. Только колесико не в кассу совсем - подумай что-то получше, ИМХО совсем корявое оно. Может просто шарик от дезодоранта попробовать в оправке от него же ?
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Простейший вариант тележки

Сообщение lenz » 29 май 2010, 19:40

Колесико если честно было от балды. Этот проект будет отложен до лучших времен, тут была очень удобная площадка для проверки алгоритмов. Сейчас доделываю будильник на колесиках :)
Основная проблема с которой столкнулся как отправить всю систему в спящий режим и потом ее оттуда вытаскивать, например сработал таймер, система до момента срабатывания таймера должна минимально потреблять электроэнергию.
Аватара пользователя
lenz
 
Сообщения: 9
Зарегистрирован: 09 янв 2009, 15:33
Откуда: Татарстан - Елабуга
Skype: lmahmutov
прог. языки: Avr Bascom, VB 6.0
ФИО: Махмутов Ленар

Re: Простейший вариант тележки

Сообщение прол » 18 июл 2010, 20:00

система до момента срабатывания таймера должна минимально потреблять электроэнергию.
так и будет,будильник отсчитывает время,электроника робота выключена,включился таймер,включился робот.
прол
 
Сообщения: 86
Зарегистрирован: 14 мар 2010, 02:33
Откуда: москва


Вернуться в Наши проекты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron