Технический форум по робототехнике.
beluha » 19 мар 2013, 15:30
Хочу попросить у вас помощи по работе с отладочным комплектом eZ430 Chronos.
Судя по форуму, этой вещью больше всех занимался Dmitry__
Пока меня интересует задача получения и обработки на компьютере данных, выдаваемых акселерометром. В общем, это не вызывает затруднений - данные идут. Но частота выборки, почему-то, не соответствует документации. Я ожидал, что частота выборки составит 400 герц, но на практике я получаю что-то около 30 выборок в секунду. Или я не правильно понимаю описание, или у них неправильно описаны режимы?
Хотелось бы понять, возможно ли вообще получить такую частоту выборки и как это сделать? Понятно, что для переключения надо менять прошивку, но сделать это самостоятельно я не смогу.
Еще одна задача в отношении этого устройства - это изменение диапазона измеряемых ускорений с 2g по заводским установкам на 8g. Это тоже требует изменений прошивки.
Дмитрий, сможете вы мне в этом помочь?
Спасибо.
Dmitry__ » 19 мар 2013, 16:23
beluha писал(а):Дмитрий, сможете вы мне в этом помочь?
Помогу, адназначна. Вечером расчехлю дебагер

Myp » 19 мар 2013, 20:25
ломакины уехали в другую тему
forum2/topic10252.htmlниже тока по существу!
Dmitry__ » 24 мар 2013, 16:06
beluha, а в чем ты собираешься принимать данные от часов? В программах от TI (через SimplciTI) или что-то свое? Собираюсь дальше разобраться с часами, самый сложный момент для меня это SimplciTI, хочу его отвязать от часов.
beluha » 25 мар 2013, 12:11
Приемник на ПК виден как COM-порт, работать с ним можно из любой среды.
Как я понимаю, SimpliciTI вообще не нужен, нужны только родные драйверы. По крайней мере я с протоколом не заморачивался.
У меня есть код на Паскале (Delphi, естественно ;о)) и на Processing (это подязык Java).
Dmitry__ » 25 мар 2013, 14:25
Сами часы работают под SimpliciTI, думаю не получится 400 герц данных под SimpliciTI гнать...
Dmitry__ » 01 апр 2013, 05:01
Поковырял на выходных часики.
Нашел одно ограничение по скорости в "void simpliciti_get_ed_data_callback(void)"
Transmit only every 3rd data set (= 33 packets / second)
Есть еще ограничивалки скорости, пока не нашел.
Но есть вопросы:
На каком диапазоне RF твои часы? (433, 868 или 915 мгц)
Если получится быстро передавать данные с часов, не пугает что они быстро сядут?
Вот табличка потребления:

При continuous simpliciTI ACC они сдохнут за 2 дня. Если скорость передачи форсировать, то думаю эту цифру можно поделить на 2-3 попугая. Игра стоит свеч?
beluha » 01 апр 2013, 14:23
Комплект на 433 мгц.
Про потребление не задумывался - сейчас задача выглядит как чисто академическая.
Ограничение протокола по передаче означает, что частота выдачи данных акселерометром соответствует указанным 400 герцам, а данные по радиоканалу передается с частотой 33 герц, и пакет содержит текущие значения ускорения на момент опроса? Если нет данных, значит передается ноль, а увеличивая частоту опроса со стороны ПК, мы только сажаем батарейку?
Dmitry__ » 16 апр 2013, 02:42
Ау, есть кто живой?
Поковырял точку доступа часов из своей программы. Возникли вопросы.
К точке доступа надо обращаться в режиме запрос/ответ. Для получения данных от часов надо послать "ff 08 07 00 00 00 00". Ответ от точки доступа "ff 06 07 tt xx yy zz", где:
tt: data type (ff: no data, 01: valid acc data)
xx, yy, zz : acc data
И так по каждой порции данных.
Вот тут начинаются грабли, потоково получить данные от точки доступа не получится, т.к. нет никакой синхронизации кадров, код "ff" может быть началом пакета, no data и "ff" - данные от акселей. Чтоб получить 400 герц данных, надо каждые 2.5 мс. долбить точку. Из вендов (да и из любой ос) я себе это слабо представляю как сделать.
Выход номер раз: сменить прошивку точки доступа. Выход номер два: принимать данные от часов другим трансивером. Для варианта раз, исходники все открыты, но нужен тексовский CC-Debugger.
http://www.ti.com/tool/cc-debuggerВариант два гибше, но вопрос о свечах

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

Madf » 16 апр 2013, 12:56
Чот я не понял суть проблемы, если потреблением пренебрегаем?
Можно изменить протокол так, что сбивки фреймов/блоков не будет, надо понять только одно, какая пропускная способность на 433МГц и скажем на 868 (у меня).
Отвязаться от стандартного свистка идея шикарная, мне честно лень что-то пытаться делать на левых трансиверах, т.к. пока проектов хватает (нов закромах лежит один блочек купленный под это дело).
На счет потребления: раз показания о датчике положения включается руками, то как бы не вижу проблемы, сам включил - сам виноват.

Вообще можно сделать установку выборки (fps).
Dmitry__ » 16 апр 2013, 15:38
Madf писал(а):Можно изменить протокол так, что сбивки фреймов/блоков не будет, надо понять только одно, какая пропускная способность на 433МГц и скажем на 868 (у меня).
Tак на данном этапе протокол надо менять не от часов к точке доступа, а от точки доступа к компу. Про это я и говорю. А это тянет за собой перепрограммирование свистка или смены трансивера. От часов поток можно организовать около 500 кбит/с. Для этого я и расковырял загрузчик, который rfbsl, он сделан не на SimpliciTI.
Вообще, из часов получается хороший трекер головы для 3д очков. За 1500 р. имеем трекер и приемник в комп. Лишь бы тексас не рюхнулся раньше времени

Madf » 16 апр 2013, 15:51
От фирменного свистка надо отказываться, ибо цены у них не гуманные, фиг купишь в рассыпухе, да и вообще сколько их доки не читал по этому направлению - ничего не понятно. Проще купить сторонний трансивер и с ним работать. От Ти тогда понадобится только часы как готовый девайс, который нужно только перепрошить (возможно по воздуху через их свисток).
Битрейт - с запасом.
Не понял что-то про протокол и обмен. Думал архитектура простая: [свисток (PC)] <> [часы], не так?
Если берём сторонний "свисток" (трансивер), то устройства можно любые делать, ставим любой МК и тут можно хоть игрушками управлять, хоть PC подключать. И забыть про всё ПО от Ти (только на момент прошивке придется вспоминать) - это в идеале.
Dmitry__ » 16 апр 2013, 16:06
Madf писал(а):От фирменного свистка надо отказываться, ибо цены у них не гуманные, фиг купишь в рассыпухе
Я свистком называю трансивер, который идет в комплекте с часами, почему его надо выкидывать? (есть еще свисток - дебагер/программатор, про него разговор не идет).
Сейчас я разобрался с тексовским чипом cc430f6137, который в часах, так, что готов делать свои контроллеры со встроенным трансивером. На это и был расчет у TI

Стоит чип 200р. Дополнительная обвязка - минимум.
Madf писал(а):Если берём сторонний "свисток" (трансивер), то устройства можно любые делать, ставим любой МК и тут можно хоть игрушками управлять, хоть PC подключать. И забыть про всё ПО от Ти (только на момент прошивке придется вспоминать) - это в идеале.
Это можно (и делают) и со штатным свистком, надо только обзавестись программатором.
Madf » 16 апр 2013, 16:19
Я на сайте не смог найти у них готовую сборочку трансивера с TTL интерфейсом.
Dmitry__ » 16 апр 2013, 16:51