roboforum.ru

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

Как сделать такой интерфейс

Резисторы, транзисторы, конденсаторы, микросборки, чип компоненты ...
Вопросы согласования управляющих модулей с периферией.

Как сделать такой интерфейс

Сообщение Gusil » 01 апр 2012, 11:56

Здравствуйте
Посоветуйте пожалуйста что мне необходимо для реализации следующей задачи:
Входные данные (команда) подаются с компьютера в виде 4рех битов по проводу (юсб или комп порт итп)

На выходе имеется две пары проводов по которым может идти или не идти ток. (если конечно замкнуть провода вместе)
Первые два бита команды - направление тока на соответствующей паре проводов, для определенности 0 - направление А
1 - направление Б
Вторые два бита - это наличие или отсутствие тока

Например команда вида 1011 означает, что по первой паре проводов ток течет в направлении Б, а по второй паре он течет в направлении А. (При условии, что провода соединены вместе, через лампочку например)
А команда вида 1101 означает, что по первой паре проводов тока нету (например - лампочка не горит),
а по второй паре течет ток в направлении А. Причем команду нужно дать один раз но исполняться она должна постоянно - до следующей команды. То есть если команда дана - 0011 - подать ток по обейм парам проводов в направлении А, то ток будет идти по этим парам постоянно до тех пор, пока не придет следующая команда.

Вопрос такой - как сделать такой, так сказать, интерфейс? Что для этого необходимо?
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение =DeaD= » 01 апр 2012, 13:56

Это вам мостовой драйвер что-ли надо сдвоенный?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Как сделать такой интерфейс

Сообщение Myp » 01 апр 2012, 14:07

а я даже дочитать не смог...
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Как сделать такой интерфейс

Сообщение Gusil » 01 апр 2012, 14:47

=DeaD= писал(а):Это вам мостовой драйвер что-ли надо сдвоенный?

Нет. Я хочу реализовать логические функции (OR, AND, NOT) на электронных схемах
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение RootAdmin » 02 апр 2012, 14:05

Ардуина. Чуть-чуть дорабатываем пример SerialEvent.
И, в простом случае (когда напряжения и тока выводов МК хватает) - все.
Если требуется - добавляем полевиков/L292/реле по вкусу.
Насколько я понял ТС - Dead уже ответил правильно.
Обобщенно говоря - драйвер двух моторов с управлением от ПК.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Как сделать такой интерфейс

Сообщение Gusil » 02 апр 2012, 19:24

RootAdmin писал(а):Ардуина. Чуть-чуть дорабатываем пример SerialEvent.
И, в простом случае (когда напряжения и тока выводов МК хватает) - все.
Если требуется - добавляем полевиков/L292/реле по вкусу.
Насколько я понял ТС - Dead уже ответил правильно.
Обобщенно говоря - драйвер двух моторов с управлением от ПК.


Спасибо большое! Как раз то что нужно.

Хотел еще спросить, а как можно было бы самомму сделать такой интерфейс не прибегая к помощи микроконтроллеров?
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение RootAdmin » 03 апр 2012, 11:46

Можно и без МК. Прицепить к параллельному порту например. Там в самом простом случае, если использовать только выводы данных - 8 выводов.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Как сделать такой интерфейс

Сообщение Gusil » 03 апр 2012, 13:11

RootAdmin писал(а):Можно и без МК. Прицепить к параллельному порту например. Там в самом простом случае, если использовать только выводы данных - 8 выводов.

А можно тут по подробнее пожалуйста?
Насколько я знаю кажется по ЛПТ порту можно послать данные один раз по команде с ПК, там ведь не постоянный ток течет?
Если так то непонятно как реализовать
Может есть ссылки почитать? Можно в принципе посылать постоянно команды но насколько это быстро будет чтобы моторчик работал равномерно?
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение RootAdmin » 03 апр 2012, 14:06

Состояние регистра данных LPT - сохраняется неизменным до записи следующих данных.
Сам в детстве собирал ридер таксофонных карт, с портом работал из-под dos.
ЗЫ, Если говорим о LPT - то вопрос тока неуместен. Ибо нагрузочная способность выводов - миллиамперы, особенно на современных материнках.
На выводах порта - напряжение. "0": 0-0,2в "1":3-5в

Добавлено спустя 4 минуты 12 секунд:
Читаем: http://robot.paccbet.ru/lpt.php
А вот тут разжевано до рисунков: http://myrobot.ru/forum/topic.php?forum=9&topic=33
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Как сделать такой интерфейс

Сообщение Gusil » 03 апр 2012, 14:21

RootAdmin писал(а):Состояние регистра данных LPT - сохраняется неизменным до записи следующих данных.
Сам в детстве собирал ридер таксофонных карт, с портом работал из-под dos.
ЗЫ, Если говорим о LPT - то вопрос тока неуместен. Ибо нагрузочная способность выводов - миллиамперы, особенно на современных материнках.
На выводах порта - напряжение. "0": 0-0,2в "1":3-5в

Добавлено спустя 4 минуты 12 секунд:
Читаем: http://robot.paccbet.ru/lpt.php
А вот тут разжевано до рисунков: http://myrobot.ru/forum/topic.php?forum=9&topic=33


А мне как раз нужно 3/0/-3 вольта :)
Спасибо за ссылку буду читать!
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение Gusil » 03 апр 2012, 21:23

RootAdmin писал(а):Состояние регистра данных LPT - сохраняется неизменным до записи следующих данных.
Сам в детстве собирал ридер таксофонных карт, с портом работал из-под dos.
ЗЫ, Если говорим о LPT - то вопрос тока неуместен. Ибо нагрузочная способность выводов - миллиамперы, особенно на современных материнках.
На выводах порта - напряжение. "0": 0-0,2в "1":3-5в

Добавлено спустя 4 минуты 12 секунд:
Читаем: http://robot.paccbet.ru/lpt.php
А вот тут разжевано до рисунков: http://myrobot.ru/forum/topic.php?forum=9&topic=33


А как насчет COM-порта, на нем возможно сделать такое же? Я завтра попробую с LPT портом, как только куплю
Ну я сегодня я попробовал с COM-портом, написал программу посылки данных через него.
У ком-порта 9 выходов. Из которых, 5ый (Ground - заземление) и 3ий (Transmit - используется при посылке данных от ПК) выходы соединил через лампочку - она загорелась при постоянной отправке сигнала через ПК, причем при посылке 0x00 горит ярче чем если 0xFF. Потом попробовал моторчик вместо лампочки - ничего не получилось.
Я замерил сопротивление моторчика - 0,8 ОМ и необходимое напряжение = 3Вольта хотя можно и 1,5 и 9 - я пробовал
Получается для моторчика нужно примерно 3 ампер. Но что странно, я замерил напряжение между 3им (трансмит выход) и 5ым(заземление) Ком порта - он выдал 6 вольт примерно. Это когда я ничего не посылал по порту
А когда посылаю то примерно 5 вольт получается. Почти одинаковое напряжение при посылке данных и когда не посылаются данные, но при посылке данных лампочка горит, а иначе не горит. Как такое возможно?

Ком-порт в отличие от LPT не хранит постоянно данные посланные? То есть отослал и все, нет тока?

И если я правильно понял мне не хватает для того, чтобы зашевелился моторчик побольше силы тока, можно ли транзистором добиться нужной силы тока через батарейку, то есть выглядеть будет так:
через эмиттер-коллетор подключаем последовательно батарейку и моторчик. А 5ый и 3ий выходы подключаем к базе транзистора и эмиттеру = если посылать данные через ком порт то вроде должно сработать? Точно не знаю, но кажется сила тока у ком-порта в милиамперах измеряется, а нужно 3 ампера. Получится ли смастерить через транзистор такое?
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение Gusil » 04 апр 2012, 11:53

RootAdmin писал(а):Добавлено спустя 4 минуты 12 секунд:
Читаем: http://robot.paccbet.ru/lpt.php
А вот тут разжевано до рисунков: http://myrobot.ru/forum/topic.php?forum=9&topic=33


Посмотрел схемку по ссылкам
Мне понравилось там где транзистор стоит, хотел спросить, а как подобрать нужный транзистор если мне нужно завести моторчик, у которого 0,8 Ом сопротивления и напряжение должно быть от 3 и до 9ти вольт? (с учетом что у ЛПТ порта сила тока в миллиамперах и напряжение определенное)
Попробую подключить как по схеме и подать на моторчик через транзистор 3 вольта (до 9ти)
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение RootAdmin » 06 апр 2012, 11:10

Транзистор рекомендую полевик N-канальный. Выпаивается с любой материнки из преобразователя питания процессора.
Если биполярный - надо (желательно) брать составной, для трех-то ампер. Почему не использовать "готовый" драйвер на микросхеме?
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Как сделать такой интерфейс

Сообщение Gusil » 06 апр 2012, 12:05

RootAdmin писал(а):Транзистор рекомендую полевик N-канальный. Выпаивается с любой материнки из преобразователя питания процессора.
Если биполярный - надо (желательно) брать составной, для трех-то ампер. Почему не использовать "готовый" драйвер на микросхеме?

В том то и дело, что у меня моторчик обычный - без встроенного интерфейса (например UART)
И приходиться к нему придумывать интерфейс самому
Искал в инете моторчики по слову Digital servo - находит всякие серво - но оказывается они все только для поворотов предназначены, знал бы уже давно бы купил и МК и Моторчик с нужным интерфейсом встроенным.
Gusil
 
Сообщения: 26
Зарегистрирован: 01 апр 2012, 11:26
прог. языки: С, С++

Re: Как сделать такой интерфейс

Сообщение Myp » 06 апр 2012, 14:36

плохо искали
сервы бывают с ограниченным углом(устанавливается угол) и с постоянным вращением. у них регулируется скорость/направление вращения
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

След.

Вернуться в Электроника, электротехника

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

Сейчас этот форум просматривают: GoGo.Ru [Bot] и гости: 22