roboforum.ru

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

Нужна помощь

Нужна помощь

RomS » 14 мар 2011, 19:32

Доброго времени всем! Уважаемые форумчане быть может у кого найдется свободная минутка? в общем суть дела такова собрал я своего первенца запрограммировал по образцу (чтоб колесами крутил) но сам в программировании ни бум-бум! Хочу запрограммировать его на хаотичное движение и поставить ИК бампера. Бампера собираю по этой ссылке http://robozone.su/2008/04/09/modul-ik- ... p2136.html. Платформа изготовлена из фенольников в качестве контроллера использую мегу8. Может есть у кого такой код? Или найдется свободная минутка чтоб написать?
К ста те в проекте поставить на него еще дисплей от нокии 3310 чтоб разного рода информацию выводил. И сделать осветительные приборы чтоб в темноте включались.

Добавлено спустя 26 минут 58 секунд:
И еще забыл спросить как датчик этот к меге8 подключить?
Вложения
SDC15981.JPG
фото робота прилагаю.

Re: Нужна помощь

vadinator » 14 мар 2011, 19:42

RomS писал(а): сам в программировании ни бум-бум!

Учитесь программированию... ничего сложного в ваших задачах нет. А вот ждать, что кто то напишет для вас программу - можно вечно.

Re: Нужна помощь

RomS » 14 мар 2011, 19:52

Да я пытался! ну не мое это. Мне проще с механикой ну и не много с электроникой. Очень обидно что схемы собраны а проверить их ни как.

Re: Нужна помощь

vadinator » 14 мар 2011, 20:03

Парадокс :) а зачем делали?

Re: Нужна помощь

RomS » 14 мар 2011, 20:08

Гы! :D Ну нравятся мне роботы! Хочется создать своего! Ну а программирование буду изучать, честно! :oops:

Re: Нужна помощь

vadinator » 14 мар 2011, 20:12

RomS писал(а):И еще забыл спросить как датчик этот к меге8 подключить?

Там же на сайте дана простенькая программа для этого датчика...
Код: Выделить всёРазвернуть
$regfile = "m8def.dat" 'используем Mega8
$crystal = 16000000 'частота кварцевого резонатора 16mHz

'Генерация частоты 36kHz
'Настраиваем Timer1

Config Timer1 = Counter , Edge = Rising , Prescale = 8 , Compare A = Toggle

' Расчитываем Compare1a
' тактовая частота (kHz) / частота TSOPa (kHz) / 2 = Compare
' 16000 / 36 / 2 = 222

Compare1a = 222

'PortB.1 - выход сигнала
'PinC.0 - считываем состояние TSOPa
'Portd.0 - сигнальный светодиод

Config Pinb.1 = Output
Config Portd.0 = Output
Config Pinc.0 = Input

Start Timer1
Do
If Pinc.0 = 0 Then
Portd.0 = 1
Else
Portd.0 = 0
End If
Loop

End

Скачайте демо-версию BASCOM AVR BASIC http://www.mcselec.com/index.php?option ... &Itemid=54 и скомптлируйте прошивку...

Re: Нужна помощь

RomS » 14 мар 2011, 20:21

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

Добавлено спустя 3 минуты 46 секунд:
К ста те говоря прошить мне удалось его. ну там покрутить колесами. поковырявшись в прошивке риверс запрограммировать получилось и танковый разворот.

Re: Нужна помощь

vadinator » 14 мар 2011, 20:32

'PortB.1 - выход сигнала
'PinC.0 - считываем состояние TSOPa
'Portd.0 - сигнальный светодиод
дальше открываем даташит на мегу8 и смотрим :)
PortB.1 - PB1 15-я нога
PinC.0 - PC0 23-я нога
Portd.0 - PD0 2-я нога
естественно для DIP корпуса...но у вас вроде такой...

Re: Нужна помощь

RomS » 14 мар 2011, 20:41

Ага спасибо! Нет у меня не в DIP а в TQFP ну я разберусь там, а на фото L293 просто торчит мега левее. А кусочек хотя бы, кода на хаотичное движение не подскажите?

Re: Нужна помощь

vadinator » 14 мар 2011, 20:45

Ага, посмотрел повнимательнее...точно не DIP...
Для генерации случайных чисел в BASIC-е, есть функция RND...которая выдаёт случайное число в выбраном диапазоне...дальше с помощью условных операторов (например IF) выбираете какой выход МК включить, а какой выключить...

Re: Нужна помощь

RomS » 14 мар 2011, 20:48

спасибо вам огромное! завтра попробую. о проделанном отпишусь.

Re: Нужна помощь

vadinator » 14 мар 2011, 20:57

Робот с управлением по RC-5. («Радио», 2006, № 9, c. 56)
статейка в журнале вроде эта...
ftp://ftp.radio.ru/pub/2006/09/robot/EPSN0048.zip
и программа... качать проверять лень но это фтп-шник журнала...
ftp://ftp.radio.ru/pub/2006/09/robot/robot.zip

Добавлено спустя 3 минуты 48 секунд:
Давно смотрел...но там вроде на BASCOM AVR BASIC... а приёмник вашего датчика TSOP можно использовать в качестве приемника сигналов пульта ДУ... Ну и управление моторами посмотрите...

Re: Нужна помощь

RomS » 14 мар 2011, 21:31

я немного в распиновке туплю. на схеме http://robozone.su/2008/04/09/modul-ik- ... p2136.html идут четыре выхода gnd и 5+ это питание, OUT это 'PortB.1 - выход сигнала как я понимаю. а вот 'PinC.0 и 'Portd.0 это где?

Re: Нужна помощь

vadinator » 14 мар 2011, 23:19

'PortB.1 - выход сигнала на ИК светодиоды датчика IN - на модуле датчика
'PinC.0 - считываем состояние TSOPa OUT - на модуле датчика
'Portd.0 - сигнальный светодиод (его нет на модуле датчика) просто вешаем светодиод через резистор например 500 Ом...
так понятно?

Добавлено спустя 1 час 38 минут 11 секунд:
Ещё стоит посмотреть это forum16/topic3921.html
и это wiki/ПО_МиниБота... там только конфигурацию ног поменятья, тип кристала, частоту кварца...
$regfile = "m32def.dat" ' файл спецификации Меги32
$crystal = 8000000 ' указываем на какой частоте будем работать
вместо этого..
$regfile = "m8def.dat" ' файл спецификации Меги8
$crystal = "ваше значение" ' указываем на какой частоте будем работать
это.

Re: Нужна помощь

RomS » 15 мар 2011, 20:34

Да, понятно. Я просто не сразу понял что на 'Portd.0 просто сигнальный светодиод вешается

Добавлено спустя 12 минут 50 секунд:
Вот и датчик доделал. Проверять и мучиться с прошивкой буду завтра.
Вложения
SDC16064.JPG
Датчик


Rambler\'s Top100 Mail.ru counter