roboforum.ru

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


Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Разработка стандартизированных модулей для домашнего робостроения.
Правила форума
Правила раздела OpenRobotics

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение =DeaD= » 17 дек 2009, 09:59

А можно с картинками и точными указаниями - например, про какую из инструкций сейчас идёт речь?
И про странность - ничего странного, порт D, пины 4-5 выведены дублем с драйвера двигателей, т.к. у ATMega32 не так много нормальных ШИМ-ов, чтобы можно было при неиспользовании ДД на этих портах подключить 2 сервы и простым аппаратными ШИМом ими рулить.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Vooon » 17 дек 2009, 10:07

Виктор, покажите вывод интроспектора.

У меня выглядит так:
Код: Выделить всёРазвернуть
vovan@desinto:~/src/liborfa$ ./lsorfa /dev/rfcomm0
Protocol: V1.1

   UID Version Start Count
------ ------- ----- -----
0x0000     1.0  0x00     1
0x0020     1.1  0x02     8
0x0001     1.0  0x0A     2
0x0040     1.0  0x0C     2
0x0060     1.1  0x0E     4
0x0031     1.1  0x12     2
0xFF01     1.0  0x14     1
0xFF02     1.0  0x15     1

Код: Выделить всёРазвернуть
vovan@desinto:~/src/pyor$ ./bin/orintro.py /dev/rfcomm0
PyOR version: 0.2.4
UIDs database version: 1.0.3
Serial Gate protocol version: 1.1
Selected device: 0x00

Drivers:
#1 Unknown driver
UID: 0xFF02
Version: 1.0
Registers: 0x15

#2 Unknown driver
UID: 0xFF01
Version: 1.0
Registers: 0x14

#3 Servo driver
OR-AVR-M32-D servo driver
SRV_CONF — reserved
SERVO — set servo pulse (WO)
|  array of 3 bytes:
|    1: servo channel
|    2, 3: servo pulse width

UID: 0x0031
Version: 1.1
Registers: 0x12, 0x13
    SERVO: 0x13
SRV_CONF: 0x12

Meta information:
  inherit: 0x0030

#4 RoboMD2 motor driver
Motor driver
PWMn — motor n speed register (R/W)
DIRn — motor n direction register (R/W)

UID: 0x0060
Version: 1.1
Registers: 0x0E, 0x0F, 0x10, 0x11
     DIR1: 0x10
     DIR2: 0x11
     PWM1: 0x0E
     PWM2: 0x0F

#5 RoboGPIO ADC driver
ADC driver
ADC_CONF — write 2 byte (WO):
|  byte 1: adc mode & refrence mode
|    bit 2: 8 bit/10 bit
|    bit 0-1:
|      00: External refrence
|      01: AVCC refrence
|      10, 11: Internal refrence
|  byte 2: enabled channels mask
ADC_DATA — write 1 byte start channel, output 1 or 2 bytes.

UID: 0x0040
Version: 1.0
Registers: 0x0C, 0x0D
ADC_CONF: 0x0C
ADC_DATA: 0x0D

#6 RoboBus SPI driver
SPI driver
<need more information about this driver>

UID: 0x0001
Version: 1.0
Registers: 0x0A, 0x0B
SPI_CONF: 0x0B
SPI_DATA: 0x0A

#7 RoboGPIO digital driver
Digital I/O driver
PORTc — port register (R/W)
DDRc — port direction (WO)

UID: 0x0020
Version: 1.1
Registers: 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09
     DDRA: 0x06
     DDRB: 0x07
     DDRC: 0x08
     DDRD: 0x09
    PORTA: 0x02
    PORTB: 0x03
    PORTC: 0x04
    PORTD: 0x05

Meta information:
     rbgp: PORTB.4, PORTD.7, PORTD.6
     gpio: 0, 0xe3, 0x03, 0x33

#8 Introspection driver
ORFA Introspection driver
INTRO register always 0x00
00 00 — get driver count
00 nn — get driver nn info

UID: 0x0000
Version: 1.0
Registers: 0x00
    INTRO: 0x00


П.С. первый регистр нужен только для совместимости со старой версией драйвера.
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение =DeaD= » 17 дек 2009, 10:10

Vooon: Хоть бы запросы что-ли написал какие Виктору выполнить :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Виктор Казаринов » 17 дек 2009, 10:12

Странно то, что неизвестно назначение теста. Что именно он проверяет и в какой конфигурации.
Схема: mediawiki/images/4/48/OR-AVR-M32-D-scheme.pdf
На рисунке я показал:
Красным цветом - поменять местами - просто передвинуть контактные площадки прихватив и резисторы на картинке не меняя ничего в самой схеме. Голубым - сдвинуть вниз, чтобы все 16 контактов встали в один ряд с другими тремя рядами по 16 контактов. Или наоборот - 3 ряда по 16 контактов поднять вверх.
Вложения
777.PNG
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение =DeaD= » 17 дек 2009, 10:18

Что значит неизвестно назначение теста? Написано же:
тестовая прошивка, мигает светодиодами и по очереди включает оба двигателя то вперед то назад, для проверки платы ДД подключенной к контроллеру


Добавлено спустя 1 минуту 31 секунду:
Виктор Казаринов писал(а):Схема: mediawiki/images/4/48/OR-AVR-M32-D-scheme.pdf
На рисунке я показал:
Красным цветом - поменять местами - просто передвинуть контактные площадки прихватив и резисторы на картинке не меняя ничего в самой схеме. Голубым - сдвинуть вниз, чтобы все 16 контактов встали в один ряд с другими тремя рядами по 16 контактов. Или наоборот - 3 ряда по 16 контактов поднять вверх.

Вот теперь понял, спасибо, думаю сегодня поправим!
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение blindman » 17 дек 2009, 10:18

Не надо ничего менять местами. На плате четко и ясно подписано что куда подключено.
Проект [[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: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Виктор Казаринов » 17 дек 2009, 10:33

Vooon писал(а):Виктор, покажите вывод интроспектора.

Ниже - лог консоли моей программы.
Комментарии:
1. *?0D** - можно на это не обращать внимание. Таким образом я в текст добавляю служебные символы для посылки по COM-порту.
2. Символ "<" - моя программа выводит в порт данные в ORFA.
3. Символ ">" - моя программа получает из порта данные от ORFA.

COM3 подключен
<V*?0D**
> V1.0*?0D**
<L40*?0D**
> L40*?0D**
<S40 00 00 S41 01 P*?0D**
> SWAASR06P*?0D**
<S40 00 00 S41 06 P*?0D**
> SWAASR060606060606P*?0D**
<S40 00 01 S41 06 P*?0D**
> SWAASR003101011202P*?0D**
<S40 00 02 S41 06 P*?0D**
> SWAASR006001010E04P*?0D**
<S40 00 03 S41 06 P*?0D**
> SWAASR004001000C02P*?0D**
<S40 00 04 S41 06 P*?0D**
> SWAASR000101000A02P*?0D**
<S40 00 05 S41 06 P*?0D**
> SWAASR002001000208P*?0D**
<S40 00 06 S41 06 P*?0D**
> SWAASR000001000001P*?0D**
<S40 00 07 S41 06 P*?0D**
> SWAASR003101011202P*?0D**

Это я итеративно запрашиваю драйверы. И делаю это с запасом для тестирования интроспектора.

Добавлено спустя 2 минуты 28 секунд:
blindman писал(а):Не надо ничего менять местами. На плате четко и ясно подписано что куда подключено.
Зато я час потратил чтобы соотнести схему и плату, т.к. на схеме контакты в GPIO не подписаны и я стал считать их по порядку сверху вниз. И нашел это несоответствие. не хотите передвигать ничего, так хоть подпишите в этой части схемы ламели. Я искал куда диоды подключены.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение blindman » 17 дек 2009, 10:38

Зато я час потратил чтобы соотнести схему и плату

А цель?

Добавлено спустя 1 минуту 12 секунд:
Если внимательно читать, то и в схему смотреть не придется
К выводам PORTC.5 и PORTB.3 подключены светодиоды индикации.
При подключении внешних устройств к этим выводам светодиоды мо-
гут загораться
Проект [[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: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение =DeaD= » 17 дек 2009, 10:38

На плате контакты подписаны все, как порты МК, зачем чего-то со схемой сопоставлять?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Vooon » 17 дек 2009, 10:41

Этот запрос не верен: S40 00 00 S41 06 P зачем 6-ть раз читать сколько всего драйверов?

А вот драйвер серв: SWAASR003101011202P
UID: 0x0031
Ver: 1.1
First reg: 0x12
Reg count: 2

Значит в регистр 0x13 пишем последовательности
Код: Выделить всёРазвернуть
struct SP {
    uint8_t servo;
    uint16_t pulse; //!< in network byte order (htons())
};
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Виктор Казаринов » 17 дек 2009, 10:58

Ребята, я тоже схем немало нарисовал. Но сейчас я выступаю в роли чайника - пользователя ваших творений. Я могу, конечно, все и так это понять. И не такие дебри распутывал. Но я принудительно ставлю себя на еще менее продвинутого пользователя в попытке помочь вам в продвижении продуктов. И обнаруживаю, что прохожий не может воспользоваться вашими разработками без дополнительных домысливаний. Если есть несоответствие или отсутствие подписи на разъеме- это дефект схемы. И никакие отмазки не действуют. А вы пытаетесь как-то обосновать недоработку. Если не нужны мои замечания, я их делать не буду. Только скажите мне об этом.

Добавлено спустя 13 минут 46 секунд:
Vooon писал(а):Этот запрос не верен: S40 00 00 S41 06 P зачем 6-ть раз читать сколько всего драйверов?
Да, такой запрос неверен. Это была лишь проверка - что же такое выдаст мне в ответ.
Vooon писал(а):А вот драйвер серв: SWAASR003101011202P
Значит в регистр 0x13 пишем последовательности
Код: Выделить всёРазвернуть
struct SP {
    uint8_t servo;
    uint16_t pulse; //!< in network byte order (htons())
};
Мдяя. Я по неопытности спутал номер версии с базовым адресом регистров драйвера.
Заработала серва, однако.
Спасибо, Vooon.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение =DeaD= » 17 дек 2009, 11:11

Так не ясно же до сих пор, чего вы сопоставляли час на схеме и на печатке, порты подписаны - максимум на схеме проследить светодиоды индикации на какие ноги МК подцеплены, если даже не читать старую инструкцию на странице вики.

Добавлено спустя 2 минуты 11 секунд:
Виктор Казаринов писал(а):Если есть несоответствие или отсутствие подписи на разъеме- это дефект схемы. И никакие отмазки не действуют. А вы пытаетесь как-то обосновать недоработку. Если не нужны мои замечания, я их делать не буду. Только скажите мне об этом.

Замечания безусловно нужны, но есть критические ошибки, а есть некоторые небольшие неудобства, например порядок групп пинов на схеме несоотв. порядку групп пинов на плате это небольшое неудобство, а вот "+" рядом с питанием неправильно нарисованный - это косяк, но его на платах везде маркером зачеркнули и подписали питание в доках.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Виктор Казаринов » 17 дек 2009, 11:33

Согласен, есть приоритеты по важности. Тогда поставлю вопрос иначе, запишите где-нибудь в TODO маленькое замечание по схеме. При любой следующей доработке схемы можно было бы и это исправить заодно. Час поиска соответствия - это я утрировал, конечно. Меня сбил текст теста. Там почему-то у порта D стоят комментарии а у порта С -нет.
Допишу тестовый плагин к моей программе и выложу все вместе где-нибудь М.б. кому-то это понадобится.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение =DeaD= » 17 дек 2009, 11:41

в TODO уже записали по схеме, разумеется.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-AVR-M32-D: Контр. на базе ATMega32 с портом ДД

Сообщение Vooon » 17 дек 2009, 13:25

Добавлю обновленное руководство.
Сделано оно на основе вики, но почти все в актуальном состоянии.
Вложения
manual.pdf
(195.93 КиБ) Скачиваний: 18
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Пред.След.

Вернуться в Open Robotics

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

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