роботы робототехника микроконтроллеры


 Страниц (1): [1]   

> Описание: Оцените идею
Artem Post Id


Главнокомандующий


Сообщений всего: 347
Дата рег-ции: Май 2012  



Здравствуйте. Улыбка
Я долго думал как можно передать множество команд по двум проводам, при этом количество каналов должно быть от 6 и больше. К примеру, имеется 6 кнопок, которые должны управлять 6 светодиодами, при этом кнопки могли бы нажиматься в любом количестве и в любой комбинации. Пульт должен быть соединён с исполнительными светодиодами только двумя проводами, один из которых естественно земля.
Естественно, должен быть шифратор и дешифратор. Конечно, можно просто купить шифратор и дешифратор, но хотелось бы что-нибудь самому придумать(хотя признаюсь, что до того, как начал набирать текст не додумался просто купить шифратор и дешифратор не в себе ).
Ну так вот, я полагаю, что можно использовать 2 микроконтроллера, которые были бы шифратором и дешифратором. Ну с железом всё понятно, вопрос как они должны общаться?
Я придумал(хотя может быть такие способы уже существуют, поэтому не ругайтесь, если изобрел велосипед) 2 способа связать их.
Первый способ.
Почти каждый микроконтроллер может создавать шим. Почти каждый микроконтроллер может совершать ацп. Если поставить в качестве шифратора микроконтроллер создающий шим, так что бы при нажатии разных кнопок, в разных комбинаций изменялся и шим сигнал. На другой стороне микроконтроллер, при помощи ацп расшифровывает это послание и выполняет действие. Хотелось бы пояснить как ацп расшифровывает послание. Шим сигнал, это по сути напряжение, которое может принимать значение от 0 до напряжения источника питания. Ацп может преобразовывать аналоговый сигнал в цифровой. Однако у этого способа есть недостаток: нужно, для каждой команды подобрать свою частоту шим, это при увеличении количества команд, нужно увеличивать и количество комбинаций, а этих комбинаций очень много! Плюс данного способа в том, приём сигнала осуществляется непрерывно, отсутствует дискретизация, как в обычных шифраторах.
Второй способ.
Опять же 2 микроконтроллера. Но теперь шифратор считывает состояния каждой кнопки и на основании полученной информации формирует двоичный код, количество разрядов в котором соответствует количеству кнопок. Код отправляется на дешифратор, который расшифровывает его и выполняет действие. Только нужно перед отправкой самого кода посылать какой-то импульс, для того что бы дешифратор был готов принять сигнал. Здесь уже появляется дискретизация и для того что бы выполнение операции казалось непрерывным, необходимо с периодичностью несколько раз в секунду отправлять новый сигнал. Я ещё не совсем продумал алгоритм расшифровки сигнала, но мне кажется, что данный способ лучше предыдущего.
Ну вот и всё, готов выслушать вашу критику по поводу этого вопроса. И ещё раз повторю, не ругайтесь, если такие способы передачи данных существуют, если бы я о них знал то не создавал бы эту тему. Улыбка
Заранее всем спасибо Улыбка
 
 Top
nestandart Супермодератор Post Id



Супер-модератор


Сообщений всего: 1490
Дата рег-ции: Сент. 2010  



Цитата:
Почти каждый микроконтроллер может совершать ацп. Если поставить в качестве шифратора микроконтроллер создающий шим, так что бы при нажатии разных кнопок, в разных комбинаций изменялся и шим сигнал.


Я "придумал" это полтора года назад. Не работает.
Т.к. ШИМ это частота (чердование 5в и 0в), АЦП нормально работает только с постоянным сигналом.

По поводу второго способа.
Так (или почти так) работают ИК пульты ДУ.

Если речь идет о кнопках то все совсем просто и второй МК не нужен.
Собирается простайший ЦАП на резисторах.
5в с каждой кнопки проходят через свой резистивный делитель напруги , номиналы делителей разные по этому с каждой кнопки выходит разная напруга.
И все они идут в один АЦП.

Подобные схемы включения есть в сети ищите.
 
 Top
Artem Post Id


Главнокомандующий


Сообщений всего: 347
Дата рег-ции: Май 2012  



nestandart пишет:
Я "придумал" это полтора года назад. Не работает.

Что ж, это прескорбно, но что ж поделаешь. Грустный
Значит второй способ всё таки реальнее Улыбка Ну и хорошо, будем искать Улыбка
 
 Top
nestandart Супермодератор Post Id



Супер-модератор


Сообщений всего: 1490
Дата рег-ции: Сент. 2010  



Можете работать с длинной импульса.
Задать каждой кнопке свою длинну.
Можно работать с частотой.
 
 Top
Artem Post Id


Главнокомандующий


Сообщений всего: 347
Дата рег-ции: Май 2012  



Аааа, вот это интересно, на счёт динны импульса, это мысль, если шифратор на каждое комбинированное нажатие кнопки будет формировать свою длину импульса, а дешифратор будет определять эту длинну и выполнять работу. Но здесь будет ограничение( я думаю жёстко) количество команд, ведь здесь снова будет дискретизация команды, а для того что бы свести её к мнимому нужно не превышать определённую длину. И ещё я не совсем понимаю, как распознавать длинну импульса.
И ещё я подумал над первым вариантом, если вместо шим использовать просто кнопки с подключёнными резисторами, то напряжение будет постоянным Голливудская улыбка Или я не прав?
 
 Top
mihail Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  



USART http://www.getchip.net/posts/044...nnykh-proektakh/
 
 Top
Artem Post Id


Главнокомандующий


Сообщений всего: 347
Дата рег-ции: Май 2012  



Михаил, если я правильно понял вашу идею, то можно связать два микроконтроллера через этот USART? Я просто им никогда не пользовался поэтому не додумался сам, спасибо вам за идею, попробую изучить вопрос.
 
 Top
Роботов Post Id



Гуру


Сообщений всего: 1350
Дата рег-ции: Июнь 2011  



А еще почти каждый МК имеет на борту 1wire - двунаправленная шина для передачи данных.

(Отредактировано автором: 08 Ноября, 2012 - 22:38:12)

 
 Top
mihail Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  



Artem
Все правильно.

1-wire немного сложнее.

(Отредактировано автором: 08 Ноября, 2012 - 22:24:35)

 
 Top
elmot Post Id



Гуру


Сообщений всего: 1141
Дата рег-ции: Дек. 2010  



mihail пишет:
Artem
Все правильно.

1-wire немного сложнее.

1-wire - это совсем жесткач. тама по тем же 2 проводам еще и питало идет.
 
 Top
Artem Post Id


Главнокомандующий


Сообщений всего: 347
Дата рег-ции: Май 2012  



Я тут изучил вопрос, но поверхностно, вы правы если использовать wire, то это сложнее, поэтому буду использовать USART, оказывается с его помощью можно связать микроконтроллер с компьютером! Только нужна специальная программа и переходник.
Теперь нужно побольше об этом почитать и тогда разберёмся.
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



mihail, вот вроде вы на подобный вопрос мне пару лет назад и ответили и даже схему нарисовали. Эта идея до сих пор не мертва, как связать два и более МК
(Добавление)
сейчас уже не найти наверное.
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



Цитата:
как связать два и более МК

навскидку из стандартной переферии микроконтроллеров: тот-же USART, I2C, SPI, CAN. у каждого варианта свои преимущества и назначение.
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Predator, юэсби забыл.
А почему такое требование - _2_ провода? (гдето видел схему как по 220 видео сигнал распростронять, вопрос в том что а нужноли себя ограничивать? Тогда уж сразу без проводов делать, сейчас все можно...)
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



USB - довольно сложный интерфейс, и для связи нужно выделить головное устройство- хост и в него вкрутить драйвер для девайса. дурдом короче.
 
 Top
Страниц (1): [1]
« Обо всем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown
  Яндекс.Метрика   Рейтинг@Mail.ru