Перейти к содержанию
    

Помощь в выборе коммандного инттерфейса

Буду благодарен в помощь/подсказки в выборе интерфейса:

есть устройство управляемое несколькими кнопками/джойстиком на самом устройстве. Нужно сделать проводное дистанционное управление параллельное управлению на самом устройстве.

Т.е. к разьему подключается дистанционка, там те-же кнопки/джойстик, комманды передаются по проводам на устройство.

Есть две модели дистанционки по длинам:

1. пол-метра

2. до 3-5 метров.

 

Кол-во команд - небольшое (примерно до 8 команд). В устройстве - микро-компьютер на основе PXA270 CPU, у него есть в наличии немало свободных GPIO к которым можно подключиться.

так-же есть CPLD/FPGA к которому тоже можно подрубиться.

Вопрос - какой интерфейс выбрать. Желание - простота реализации, надежность, меньше физических линий (кол-во свободных пинов разьема - сильно ограничено), не нужно хитроумное.

 

Можно конечно асинхронно выставлять код комманды (3 бита) и CPU будет периодически его проверять, но тут 3 линии, да и не уверен будет ли работать надежно на длинах кабеля более полу-метра.

 

Какие варианты ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что можно в пульте держать аппаратно? Какие условия эксплуатации?

Если в пульте можно МК и помЕховая обстановка хорошая, то по USART все передавать. Надо 4 линии: GND, Vcc, RxD, TxD. Если нужна бОльшея надежность, то поставить преобразователи для RS232 в устройство и пульт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Коммутировать в пульте 8 резисторов на 2-х проводную линию к устройству.

В устройстве 8-ми разрядное АЦП (во многих контроллерах есть встроенное),

или RC генератор c последующим программным измерением его

частоты (которая будет пропорциональна резистору в пульте).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что можно в пульте держать аппаратно? Какие условия эксплуатации?

Если в пульте можно МК и помЕховая обстановка хорошая, то по USART все передавать. Надо 4 линии: GND, Vcc, RxD, TxD. Если нужна бОльшея надежность, то поставить преобразователи для RS232 в устройство и пульт.

 

Насчет RS232 - в принципе реально ибо само устройство имеет RS232 и TxD, RxD, GND выходят на внешний разьем. Но тогда в пульте нужно какой-нить микроконтрллер и рутины RS232 комманд.

В приципе я не ограничен аппаратно в плане пульта, хотелось просто попроще (хотя и думал CPLD там ставить, но тогда возможно и микроконтроллер для RS232 будет не сложнее...)

Условия эксплуатации - снаружи (т.е. в "поле").

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насчет RS232 - в принципе реально ибо само устройство имеет RS232 и TxD, RxD, GND выходят на внешний разьем. Но тогда в пульте нужно какой-нить микроконтрллер и рутины RS232 комманд.

В приципе я не ограничен аппаратно в плане пульта, хотелось просто попроще (хотя и думал CPLD там ставить, но тогда возможно и микроконтроллер для RS232 будет не сложнее...)

Условия эксплуатации - снаружи (т.е. в "поле").

Если бы уже не было RS232, то имхо лучшим вариантом был бы LIN на процессоре за $0.3. Никакой обвязки и всего 3 провода - GND, LIN, питание пульта. А так - посчитать нужно. Но похоже LIN всётаки выигрывает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если бы уже не было RS232, то имхо лучшим вариантом был бы LIN на процессоре за $0.3. Никакой обвязки и всего 3 провода - GND, LIN, питание пульта. А так - посчитать нужно. Но похоже LIN всётаки выигрывает.

 

Сорри за наивность, что такое LIN ? Не слышал от таковом..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сорри за наивность, что такое LIN ? Не слышал от таковом..

В автомобилях применяется в т.ч. Там ведь не везде CAN. Обычно до двери CAN, а в двери переходник с CAN на LIN и всякие лампочки, замки, стеклоподъёмники и т.п. уже по LIN управляются. LIN самосинхронизирующийся, т.е процессор от встроенного генератора может тактироваться в отличие от RS232 и т.п. А значит дешёвый. Специальные драйвера линии LIN имеются. Бывает их ещё однопроводным каном называют. Я не пользовался, но если интересно посмотрю - где-то ссылки были. В поисковике наберите - найдётся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В автомобилях применяется в т.ч. Там ведь не везде CAN. Обычно до двери CAN, а в двери переходник с CAN на LIN и всякие лампочки, замки, стеклоподъёмники и т.п. уже по LIN управляются. LIN самосинхронизирующийся, т.е процессор от встроенного генератора может тактироваться в отличие от RS232 и т.п. А значит дешёвый. Специальные драйвера линии LIN имеются. Бывает их ещё однопроводным каном называют. Я не пользовался, но если интересно посмотрю - где-то ссылки были. В поисковике наберите - найдётся.

 

Спасибо.

В принципе в системе уже есть UART, на разьем выходят RS232 (TxD, RxD, GND) ибо система общается с PC по serial.

Думаю это преймущество ибо не нужно изголяться вытаскивать еще доп. пины из системы на разьем. Значит по кабелю пойдут 3 линии, хотя ежели будет экранированный - по нему можно пустить землю, тогда останутся всего 2 линии (сигналы). Почитаю насчет LINa что-бы понять будет ли он выгоден в данной ситуации или RS232 есть самое оптимальное.

Думаю в пульте поставлю какой-нить PIC контроллер с встроенным UARTом да драйвеер (скажем MAX232), на GPIO контроллера навесить кнопок/джойстик пульта, ну и ессно софт UARTa (по нажатию кнопки передается по UARTу соотв. код в систему). Думаю это будет наиболее простое и надежное решение, хотя с софтом для микроконтроллеров пока не доводилось иметь дело...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...

Значит по кабелю пойдут 3 линии, хотя ежели будет экранированный - по нему можно пустить землю, тогда останутся всего 2 линии (сигналы).

...

Про питание пульта забыли. Или у него батарейка будет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Про питание пульта забыли. Или у него батарейка будет?

 

Да, немаловажная деталь.

У него автономное питание (батарейка indeed), надеюсь PIC контроллер + RS232 driver будут жрать по божески... :cranky: ...

А вообще, сколько может жрать такой контроллер (VCC 3.3V) учитывая ьто всего софта там будет скажем рутина UARTа ? (ожидание наьатия кнопок и посылание кодов комманд как следствие) ? Думаю использовать PIC со встроенным RS232 (кроме драйвера ессно), наверно 19200 хватит (хотя сама система работает с PC на 115200), клок контроллера наверно в пределах 10 MHz..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, немаловажная деталь.

У него автономное питание (батарейка indeed), надеюсь PIC контроллер + RS232 driver будут жрать по божески... :cranky: ...

А вообще, сколько может жрать такой контроллер (VCC 3.3V) учитывая ьто всего софта там будет скажем рутина UARTа ? (ожидание наьатия кнопок и посылание кодов комманд как следствие) ? Думаю использовать PIC со встроенным RS232 (кроме драйвера ессно), наверно 19200 хватит (хотя сама система работает с PC на 115200), клок контроллера наверно в пределах 10 MHz..

Там 85...95% будет жрать собственно преобразователь в драйвере RS232 (около 3 милиампер). Это если процессор правильно настоить ессно. Я рекомендовал бы какую нибудь тиньку, но можно, хотя и хуже, и PIC.

В частности из-за потребления LIN интерфейс лучше. Он в отличие от RS232, если ничего не нажимать/передавать, то ничего и не жрёт. Можно и вообще 2 подтягивающих резистора по концам и всё - такой самодельный LIN. И микрофонный кабель использовать в кач-ве шнура можно будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Там 85...95% будет жрать собственно преобразователь в драйвере RS232 (около 3 милиампер). Это если процессор правильно настоить ессно. Я рекомендовал бы какую нибудь тиньку, но можно, хотя и хуже, и PIC.

В частности из-за потребления LIN интерфейс лучше. Он в отличие от RS232, если ничего не нажимать/передавать, то ничего и не жрёт. Можно и вообще 2 подтягивающих резистора по концам и всё - такой самодельный LIN. И микрофонный кабель использовать в кач-ве шнура можно будет.

 

Спасибо.

А что за тинька ?

 

В принципе, работа пульта на систему ожидается эпизодическая, т.е. примерно 80-90% от времени работы системы - пульт молчит. Драйвер возьму ADM3222, он питается 3.3V, и есть у него shutdown.

Так и буду имплементировать держа его это 80-90% времени в shutdownе (т.е. контроллер будет держать его в shtudownе пока не будет запрос не передачу (нажатие кнопки)). Думаю не будет проблем для батарей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо.

А что за тинька ?

Атмеловская ATtiny xx. Дешевле при тех-же параметрах и по энергопотреблению обычно выигрывает.

В принципе, работа пульта на систему ожидается эпизодическая, т.е. примерно 80-90% от времени работы системы - пульт молчит. Драйвер возьму ADM3222, он питается 3.3V, и есть у него shutdown.

Так и буду имплементировать держа его это 80-90% времени в shutdownе (т.е. контроллер будет держать его в shtudownе пока не будет запрос не передачу (нажатие кнопки)). Думаю не будет проблем для батарей.

От 2-х батареек работать не сможет. Или повышающий преобразователь ставить придётся. Да и скорость 19200 излишне высока. 2400 хватит.

А процессор тоже можно в слипе держать и будить по нажатию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Атмеловская ATtiny xx. Дешевле при тех-же параметрах и по энергопотреблению обычно выигрывает.

 

От 2-х батареек работать не сможет. Или повышающий преобразователь ставить придётся. Да и скорость 19200 излишне высока. 2400 хватит.

А процессор тоже можно в слипе держать и будить по нажатию.

 

Ну ессно через step-up/boost, это уже детали которые очевидны, посему и не упоминал :)

А насчет процессора в power down и побудке по нажатию - это правильно.

 

2400 ? Тоже верно, вполне хватит...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну ессно через step-up/boost, это уже детали которые очевидны, посему и не упоминал :)

Почему очевидны? Многие процы, в т.ч. те-же тиньки с буквой V в диапазоне 1,8..5,5 вольта работают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...