Цитата:
SWG, ваша реализация хороша для дистанционного управления. По сути она и есть протокол ДУ.
Так у меня ведь пока реализован только нижний уровень. При отсутствии (пока!) центрального контроллера, естественно, я отдаю команды ходовому контроллеру напрямик, с виртуального пульта компа. Должен же он их откуда-то получать. Зато это дает мне удобную возможность отладить нижний уровень и за это время лучше обдумать верхний. Если же свалить все в одну кучу, на один контроллер, пусть даже ARM, да еще с виртуальными машинами, вообще замаешься отлаживать все сразу: и работу датчиков, и ходовую, и скрипты, и ВМ...
Цитата:
ВМ же позволит научиться роботу думать! Вот посчитайте - сколько кода вы напишете для своего робота в 8 КБ памяти? Достаточно, конечно, но не много.
Ходовому контроллеру, контроллеру бамперов - и 2-4к за глаза (если писать но нормальному), башне от 4 до 8К тоже хватит. А на центральный я планирую пока Мегу 128, или аналогичное из PIC. Думаю, 128кб при моих подходах к программированию хватит на что угодно. (Опыт кое-какой есть). Я же не буду туда Линуха или VISTA совать.
Цитата:
А теперь прикинте, насколько громадный скрипт можно откомпилировать и залить в робота! Он же не будет храниться в памяти контроллера - для него можно организовать внешний носитель. А в памяти микроконтроллера будет находится только виртуальная машина и слой драйверов устройств (драйвер, в данном случае, правильное название). В скрипт можно добавить механизм библитек, так что код для удобства можно будет разбить на кучу модулей.
А нафига? Центральный контроллер будет получать от компа конкретные задания высокого уровня типа: "Взять под охрану помещение", "Переместиться в точку с координатами XY", "Вести видеонаблюдение в направлении XXX", "Разбудить в ЧЧММ", "Вернуться на базу", а последовательность действий для выполнения будет определять центральный контроллер робота, детализируя приказ для более низких уровней, исходя из логики, заложенной в собственную программу. Если же ему спускать целую портянку скриптов, в которых уже жестко прописаны все мелкие действия, какой же это интеллект? Это уровень древней ЭВМ с перфолентой.
Цитата:
А в памяти микроконтроллера будет находится только виртуальная машина и слой драйверов устройств (драйвер, в данном случае, правильное название).
А вот это как раз и получится не робот, а дистанционно - управляемый манипулятор...