roboforum.ru

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

Датчик расстояния и его взаимодействие с ПК (lpt)

Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение d-man08 » 17 мар 2011, 21:35

я тут небольшой проектичег делаю. возник судьбоносный вопрос.
собираю, в общих чертах, робота. идея в том, чтоб он управлялся компьютерной программой.
для этого я почитал про lpt порт, разобрал пульт управления игрушкой на ду, припаял разъем и теперь умею программно управлять этой машинкой.
теперь мне надо сделать так, чтоб она в некоторые моменты времени определяла расстояние до всех объектов окружения. насколько я понимаю, это правильней всего сделать с помощью датчика расстояния на вращающейся опоре. почитал статьи вроде [[ИК-дальномеры SHARP]]
остался вопрос:
от датчика идет аналоговый сигнал от 2в до 400мв, а лпт порт работает с бинарными сигналами 5в. соответственно необходимо ли делать преобразователь данного сигнала, или есть аналоги описанных в статье датчиков с необходимым мне выходным сигналом????????

в лпт порте много разъемов, в которых создается либо +5в либо 0, очень удобно для управления, но данную проблему пока не решил. помогите, плз.
Последний раз редактировалось SkyStorm 18 мар 2011, 00:28, всего редактировалось 1 раз.
Причина: Ссылку на вики поправил
d-man08
 
Сообщения: 6
Зарегистрирован: 17 мар 2011, 19:35

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение Myp » 18 мар 2011, 09:26

так как ты хочешь сделать нельзя :)

нужен в обязательном случае микроконтроллер который будет с помощью шарпа определять дистанцию и отправлять в лпт дистанцию в цифровом виде.

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 09:46

Почему и не поизвращаться :) используем два пина LPT...
Один выход - с него дискретный сигнал подаем на конденсатор через резистор и имеем возможность "заряжать" и "разряжать" его (конденсатор) с помощью ПК...
Второй вход - цепляем на выход копмаратора....один из входов которого подключён к вышеобозначеному конденсатору, а на второй подаём аналоговый сигнал с дальномера...
Ну а дальше всё просто :) Программа на ПК выставляет на выходном пине "единичку" и считает через какое время сигнал на входном пине изменит своё состояние... затем разряжаем кондёр выставлением "ноль" на выходе и далее цикл повторяется... таким образом можно считывать несколько аналоговых значений и даже ввести опторазвязку для такого простоко АЦП...
Ещё один вариант, это использование вместо RC-цепочки - счётчика с ЦАП... управлять им придётся двумя выходными пинами LPT...один подключаем на счётный вход, другой ко входу сброса счётчика.
В начале цикла сбрасываем счётчик в ноль, затем подаём счётные импульсы и проверяем не изменилось ли состояние входа...
Как то так :)
ЗЫ...используйте МК...ещё лучше контроллеры серии OR с готовыми прошивками или Arduino...
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение =DeaD= » 18 мар 2011, 09:49

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 10:05

Myp писал(а):да и вобще использование ЛПТ ничего хорошего в себе не несёт.

Это вы зря, прекрасный порт... жаль не появилось современного аналога со множеством входных и выходных пин...Правда подобные LPT методы используются в современном производстве и науке (недешёвые платы ввода-вывода)... а вот в бытовой технике (для гиков)более простого в использовании для скоростного ввода-вывода аналога просто нет... всё что нужно, это записать байт по определённому адресу или просто считать байт и никаких драйверов :)

Добавлено спустя 1 минуту 5 секунд:
=DeaD= писал(а):А еще бывают АЦП :D

Бывают... и даже с последовательным интерфейсом :D
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение =DeaD= » 18 мар 2011, 10:22

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 10:26

Эмулировать токмо ... при программировании МК так часто делают :wink:
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение =DeaD= » 18 мар 2011, 10:27

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 10:36

Тогда входов-выходов в LPT не останется на управление моторами и дискретные датчики... или придётся использовать дополнительные буферы для мултиплексирования множества входов и выходов...а вообще, любую задачу можно решить разными способами в зависимости от зависимостей :) тьфу ты...от возможностей, знаний, финансов, опыта....
=DeaD=, я же писАл...
vadinator писал(а):Почему и не поизвращаться :)

или у вас тоже игривое настроение? :ROFL:
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение =DeaD= » 18 мар 2011, 10:37

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 10:42

8 значений только? Если хватит, то хватит...пусть ТС решает...
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение Myp » 18 мар 2011, 11:12

vadinator писал(а):жаль не появилось современного аналога со множеством входных и выходных пин...

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 11:46

Myp писал(а):в сто раз круче любого ЛПТ порта :lol:

Только "канал узкий" :D для связи...из-за этого, не ко всем задачам может быть применим... Например формирование точных импульсов при сложной сигнатуре оных или время реакции программы в ПК на изменение состояния входов...

Добавлено спустя 3 минуты 27 секунд:
Подсчитайте например разницу во времени, между вычисленным программой на ПК значением для ЦАП и временем "появления" этого сигнала на выходе... для последовательной передачи его по COM для ардуины и простой записью значения в порт ПК...
Какое кол-во каналов АЦП, способен пропустить последовательный порт ардуины для 12-битных значений например?...какова частота дискретизации?

Добавлено спустя 2 минуты 16 секунд:
... или считыванием значений с 16-и (32-х) 16-и битных АЦП...какой вариант по вашему быстрее?

Добавлено спустя 9 минут 10 секунд:
ЗЫ... думаю ТС пока такие задачи не нужны, поэтому и предложил...
vadinator писал(а):используйте МК...ещё лучше контроллеры серии OR с готовыми прошивками или Arduino...
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение Myp » 18 мар 2011, 11:50

ну это смотря что понимать под узким...
компорт на скорости 921600 чрезвычайно шустр :)

вот для точных импульсов ЛПТ точно не годится, с него банальной сервой управлять почти нереально, серва становится индикатором загрузки процессора, процессор загружен - серва дёргается хаотично.

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

Re: Датчик расстояния и его взаимодействие с ПК (lpt)

Сообщение vadinator » 18 мар 2011, 12:53

Будем считать, что вы победили увж.Мур...не хочу холиварить, просто познакомьтесь немного с операционными системами реального времени (RT OS)...
http://ru.wikipedia.org/wiki/Категория:Операционные_системы_реального_времени
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

След.

Вернуться в Сенсорика

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron