roboforum.ru

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

iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Re: iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Сообщение dccharacter » 16 ноя 2012, 21:03

НО ЗАЧЕМ????? Отправляй 0xFF и 0x38 ?!?!?!
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Сообщение elmot » 16 ноя 2012, 21:12

А что надо-то?
Аватара пользователя
elmot
 
Сообщения: 5691
Зарегистрирован: 10 ноя 2011, 12:02
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья

Re: iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Сообщение Kitam1n » 16 ноя 2012, 22:22

dccharacter писал(а):НО ЗАЧЕМ????? Отправляй 0xFF и 0x38 ?!?!?!

Ну переводить в 16-ю систему же все равно надо, и разделять. А отправлять уже в любом виде можно как я понимаю.

Добавлено спустя 32 секунды:
elmot писал(а):А что надо-то?

В смысле?
Лучше переесть, чем недоспать.
Аватара пользователя
Kitam1n
 
Сообщения: 343
Зарегистрирован: 30 мар 2012, 16:39
Откуда: Москва
прог. языки: C#, Си, php
ФИО: Влад

Re: iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Сообщение dccharacter » 16 ноя 2012, 23:41

Слуш, я тебе честно признаюсь, я процентов на 50 понимаю только, что происходит. Но вот пример:

Код: Выделить всёРазвернуть
void main(void)
{
signed int si = -2000;
signed char left_byte;
left_byte = si >> 8;
signed char right_byte;
right_byte = si;
si = (left_byte << 8)+right_byte;
printf("%i", si);
}


Можешь протестировать его тут: http://codepad.org/bJOUoy8S
Он работает на этом компиляторе. Не факт, чтобудет работать на другом. Подстава в том, что не всегда очевидно как компилятор делает преобразования signed ->unsigned. Некоторые делают это прозрачно, т.е. автоматически конвертят значения. Некоторые этим не озадачиваются. Я, честно, говоря, немног удивлен, что пример работает. Потому что при честном сплите 2's complement (т.е. если написать на листочке бинарное число и просто провести посередине черту) это не должно получиться. Но получается, т.е. там какая-то магия происходит в бэкграунде. Но это всегда легко протестировать. Главное, используй сдвиг, а не суммирование/вычитание/деление (отличный совет, который полностью херит твою программу, если ты компиляешь каким-нить 32-битном эмбеддед компилером - он старшие 8 бит просто откажется двигать и трындец).
Короче пробуй. Не надо ничего ни во что конвертировать. Тупо сдвигай и режь пополам.
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Сообщение Kitam1n » 17 ноя 2012, 20:44

Все нормально понимаешь, уж при любом раскладе получше меня. Мне нужно слать управляющие команды для движения и поворота, для этого dec нужно переводить в hex.
Для тупого движения по заранее заданному алгоритму это все можно посчитать и запрограмировать на калькуляторе, типа ехать вперед столько то, повернуть в сторону на столько то и ехать дальше... Но это все румба делает и так сама.
Мне же нужно интерактивное управление например с геймпада, а для этого нужно переводить одно в другое на лету, в этом то мне и поможет это.
Короче попробую.

И вообще СПАСИБО ВАМ ВСЕМ за помощь!

Помните как Амстронг сказал: "Это маленький шаг для человека и огромный скачок для человечества."
А у меня тут наоборот: ваша маленькая подсказка - огромный шаг для меня... :beer: :friends: :good:
Лучше переесть, чем недоспать.
Аватара пользователя
Kitam1n
 
Сообщения: 343
Зарегистрирован: 30 мар 2012, 16:39
Откуда: Москва
прог. языки: C#, Си, php
ФИО: Влад

Re: iRobot Roomba 4230 Remote Scheduler Robotic Vacuum

Сообщение Kitam1n » 10 дек 2012, 13:52

Научился управлять:



Добавлено спустя 2 минуты 54 секунды:
Че бы дальше сделать? Прицепить на борт ноут?
Лучше переесть, чем недоспать.
Аватара пользователя
Kitam1n
 
Сообщения: 343
Зарегистрирован: 30 мар 2012, 16:39
Откуда: Москва
прог. языки: C#, Си, php
ФИО: Влад

Пред.

Вернуться в Роботы-пылесосы

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

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