roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 03:19

Часовой пояс: UTC + 4 часа


Правила форума


Правила раздела OpenRobotics



Начать новую тему Ответить на тему  [ Сообщений: 129 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9  След.
Автор Сообщение
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 23 июн 2010, 11:52 
Не в сети
Аватара пользователя

Зарегистрирован: 28 июл 2009, 10:02
Сообщения: 862
Откуда: Самара
ФИО: Павел Сергеевич
Спасибо :)
Вроде по расчетам проходит и 250 Ом при 5В, только ток будет больше, примерно 15мА.

_________________
«Сон разума рождает чудовищ»


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 07 дек 2010, 19:25 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Собрал бету I2C версии.

Небольшой багрепорт по плате:
нужно чуть развести площадки KTIR'а, центровка верная, но площадка коротковата.


Вложения:
PICT0017.JPG
PICT0017.JPG [ 86.49 КиБ | Просмотров: 3157 ]

_________________
Linux user | Firefox user
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 09 дек 2010, 01:33 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Собрал i2c bootloader и написал uploader для него.

Bootloader из OpenServo, но только он не ждет 5 секунд,
а проверяет соединены ли MISO и MOSI перемычкой.

Интерфейс у него очень прост:
Во фрейме записи устанавливается адрес (2-а байта) буфера r/w, если далее идут данные, то они будут записаны по указанному адресу.
В фрейме чтения идет чтение буфера r/w.
Адрес до 0x2000 — flash, после — EEPROM, бут защищен от перезаписи.
Спец. адрес 0xffff — старт прошивки.
Бут занимает 512 слов, стартовый адрес 0x1c00.


Приступаю к прошивке.
Будет ли удобно такое распределение регистров http://hg.vehq.ru/or-linesens-fw/file/a ... regmap.txt ?

Легенда:
- RO только чтение, запись не влияет;
- RW чтение/запись;
- RW FN чтение/запись спец функции.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 09 дек 2010, 01:45 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Точно везде 16-битовые значения надо? 8-битов не хватает?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 09 дек 2010, 02:42 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Для калибровки не хватит.
Хотя из вех регистров пожалуй только LINE POSITION будет читаться...

Калибровка будет сохраняться в EEPROM, как и I2C-ADDRESS.

Вообще думаю процесс настройки после включения такой:

1. Почитать DEVICE TYPE/SUBTYPE (регистры совпадают с OpenServo), проверить;
2. Подать команду LOAD CALIBRATION (записать не 0 в регистр)
3. Включить модуль ENABLED =!0

Добавлено спустя 1 минуту 32 секунды:
Хм, пожалуй нужно еще регистр LINE COLOR (Black 0/ White !0) и его тоже держать в EEPROM

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 10 дек 2010, 08:02 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Написал основной кусок прошивки.

Сейчас читает все датчики, но пока нет калибровки и положения линии.
Но пока не отловил глюк — если все датчики над отражающей поверхностью — начинает мусор писать, сбои чтения.
Если хоть один датчик не принимает — все нормально.

Кстати посмотрев осциллограмму уменьшил задержку на зарядку до 5 мс (было 10)
и думаю вообще можно сократить до 2-х.

Еще один баг — адрес i2c меняется только посте ресета, онлайном не хочет.

-------------------------------------------------------------------------

В проекте 4-е подпроекта:
1. src — firmware
2. bootloader — i2c bootloader
3. uploader — fw uploader (pc side for boot)
4. status — status GUI (+ modify RW)

uploader & status написаны на Python и требуют liborfa для работы.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 21 дек 2010, 23:16 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Много времени убил на отлов просадки питания.
Дроссель заменил на BLM (FB) и все нормально.
До этого думал что у меня программный баг, посмотреть питание не догадывался.


Вложения:
Комментарий к файлу: настройка
qstatus.png
qstatus.png [ 29.31 КиБ | Просмотров: 3044 ]
Комментарий к файлу: бесконечность :)
ADS00006.PNG
ADS00006.PNG [ 4.6 КиБ | Просмотров: 2965 ]
Комментарий к файлу: палец рядом с датчиком
ADS00005.PNG
ADS00005.PNG [ 4.01 КиБ | Просмотров: 2956 ]

_________________
Linux user | Firefox user
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 00:58 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Vooon писал(а):
До этого думал что у меня программный баг, посмотреть питание не догадывался.


Да у вас там аппаратный баг... даже не баг, а схемотехническая ошибка. причем дурная.
Представьте, я свечу лампой в морду фототранзистору. Фототранзистор замыкает коллектор на землю, и тут вы пытаетесь ногой проца поднять этот коллектор с земли...

Кто сильнее открытый фототранзистор или нога проца? разрядится ли кондер в такой ситуации? Ничего ли не сгорит? Я не знаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 05:11 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
А почему ты думаешь что я не отключаю Led?

Дописал интерфейс, дописал прошивку.
Вроде все работает.

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


Вложения:
Комментарий к файлу: таблица регистров
manual.pdf [101.93 КиБ]
Скачиваний: 0
qstatus2.png
qstatus2.png [ 39.11 КиБ | Просмотров: 3023 ]

_________________
Linux user | Firefox user
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 05:50 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Я про лед ничего не думаю


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 08:56 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
А надо бы, потому что именно лед открывает фототранзистор.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 09:58 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Тогда в инструкции надо написать: включать только в темноте, иначе сгорит :)))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 10:19 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Pololu сто тыщ лет так делает и ничего.
А у нас сгорит, да.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 10:22 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
это не оправдание уродливости схемы.
нагружать ногу проца на емкость - это уже криво, а тем более на коллектор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка Open Robotics: Датчик линии
СообщениеДобавлено: 22 дек 2010, 10:37 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Проверил схему, согласен, надо токоограничительный резистор поставить. Спасибо за совет! :crazy:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 129 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO