Доброго времени суток, господа!
Итак, по-порядку...
Предпосылки: Скажите, сколько у Вас регуляторов? Они все одного типа? По крайней мере у меня их много и практически все разные. На каждый тип покупать карту - не бюджетно. На то он и Китай, чтоб "12 копеек" стоить. Да и потом надо помнить еще что чем программируется! :) В общем, карты - не мой путь. Все мои регули программируются с пульта. Вот только в последний раз, настраивая 5 регулей (3 типа) подряд я немного задолбался стиками дергать и инструкции искать...
И тут у меня случилось озарение!
Собственно идея: Хочу иметь программатор, чтоб мог сразу n регулей прошить и еще столько же серв протестить и еще на балалайке играть умел! (последнее - просто прикол) Короче, хочу все и сразу и еще даже не знаю что. Но как?
Не знаю как у Вас, а в моей мастерской комп - чуть ли не главный инструмент. Различные кады, симуляторы, рассчеты, база документации и прочие полезности.... Для поля тоже ноут специально заточенный имеется. В общем, я IT-шник и всегда при компе. Так почему бы не расширить его возможности еще немного...
Любой регуль при программировании с пульта получает ШИМ-сигнал. Для процесса программирования обычно используется 3 ширины: условно 1000, 1500 и 2000. Интервалы времени ожидания отклика пользователя в секунды и всегда предсказуемы, так что звуковые сигналы на 101-ом регуле уже не слушаешь. Так почему бы не сделать эмулятор пульта с последовательностями импульсов заранее определенной ширины и с заранее определенными интервалами? Да написать бы к этому оконный интерфейс, чтоб настройки можно было на экране мышкой нащелкать и кнопкой в регуль отправить? Да еще не в один регуль, а сразу в несколько? А ни вопрос! Мое озарение случилось, когда мне на глаза попалась приблуда по имени Pololu Mini-Maestro. Последнне, что было из него сделано - сервотестер на 24 сервы, каждая из которых могла жить своей жизнью при условии наличия компа. Эта же штука могла работать в автономном режиме с 10-ю сервами по одной программе, выбираемой кнопкой.
Зверь Mini-Maestro: это сервоконтроллер в моем варианте на 24 канала. На борту USB интерфейс и последовательный порт. Есть немного памяти и возможность грузить в нее скрипты. Мозг - PIC. Уж какой - не помню. Это и не соль. Сделать на ней можно достаточно много. Главное - есть свободно распространяемый SDK с кучей примеров и до неприличия простой API.
В моей голове созрело следующее: 1. берем эту штуковину и логически назначаем на каком канале будет серва, а на каком - ESC. 2. пишем на C# прогу с обычным оконным интерфейсом. В ней и будем назначать что где висит и чем занимается. 3. создаем небольшую локальную базу (например, под firebird), в которой будем хранить олицетворенные алгоритмы изменения ШИМ. Туда же закидаем допустимые значения. 4. в интерфейсе программы делаем возможность выбора для канала алгоритма и установки параметров. 5. делаем большую кнопку "START", которая запускает в винде по потоку на каждый выбранный алгоритм. 6. в каждом потоке будет жить объект, который выполняет заданный алгоритм и отправляет комманды через USB в контроллер
Ну как-то так...
|