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 раз.

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

blindman » 29 май 2010, 11:19

Фотографии надо бы уменьшить, нет там ничего такого, чтобы требовалось 10 мегапикселей и 4.5 мегабайта

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

pashteet » 29 май 2010, 11:19

Можно использовать энкодеры. Можно определить экспериментально при какой частоте сервоприводы неподвижны и использовать одинаковое (или по экспериментировать) приращение для обеих серв.

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

avr123.nm.ru » 29 май 2010, 14:08

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


Поздравляю. Только колесико не в кассу совсем - подумай что-то получше, ИМХО совсем корявое оно. Может просто шарик от дезодоранта попробовать в оправке от него же ?

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

lenz » 29 май 2010, 19:40

Колесико если честно было от балды. Этот проект будет отложен до лучших времен, тут была очень удобная площадка для проверки алгоритмов. Сейчас доделываю будильник на колесиках :)
Основная проблема с которой столкнулся как отправить всю систему в спящий режим и потом ее оттуда вытаскивать, например сработал таймер, система до момента срабатывания таймера должна минимально потреблять электроэнергию.

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

прол » 18 июл 2010, 20:00

система до момента срабатывания таймера должна минимально потреблять электроэнергию.
так и будет,будильник отсчитывает время,электроника робота выключена,включился таймер,включился робот.


Rambler\'s Top100 Mail.ru counter