roboforum.ru

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

 

Как измерить скважность ШИМ-сигнала с помощью Arduino?

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

Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение zuluss008 » 27 ноя 2011, 12:47

Есть ардуино на базе Atmega8 (328я во время опыта сгорела), есть УЗ-дальномер URM37 с выходами UART и PWM.
Требуется использовать PWM-выход дальномера (UART ардуины уже занят взаимодействием с другим устройством)
Столкнулся со следующей проблемой, казалось поначалу, всё просто, да не тут то было....

В даташите написано
Mode 3: PWM passive control mode:
Under this mode, a low pull on pin COMP/TRIG will trigger a sensor reading. The width of the pulse is
proportional to the servo rotating degree. After a successful sensor reading, Pin PWM will output pulses,
every 50us represents 1cm. If the reading is invalid, a 50000us pulse will be returned.

ссылка из даташита на пример с кодом недействительна.
также нашел инфу по этому вопросу-
использование функции pulseIn(): http://arduino.cc/en/Reference/PulseIn

ВОПРОС:
как измерить ШИМ-сигнал дальномера с помощью Ардуино (Atmega8)?
zuluss008
 
Сообщения: 95
Зарегистрирован: 19 окт 2010, 23:13
Откуда: Республика Беларусь, г. Брест
Skype: zuluss008
прог. языки: AHDL, spectrum BASIC, Wiring, visual C++
ФИО: Зуев Евгений Николаевич

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение avr123.nm.ru » 27 ноя 2011, 13:52

Вам надо длину импульса измерять похоже после запуска измерения. http://www.arduino.cc/cgi-bin/yabb2/YaB ... 1295655547
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14200
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение zuluss008 » 27 ноя 2011, 15:36

Скетч из диалога этих двух людей попробовал.
Там что к чему подключать не понятно.
Надо только выход PWM использовать?
А COMP\TRIG куда???
при использовании скетча счетчик времени только бесконечно нарастает...
zuluss008
 
Сообщения: 95
Зарегистрирован: 19 окт 2010, 23:13
Откуда: Республика Беларусь, г. Брест
Skype: zuluss008
прог. языки: AHDL, spectrum BASIC, Wiring, visual C++
ФИО: Зуев Евгений Николаевич

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение coder_perm » 27 ноя 2011, 16:43

Может проще через RC на АЦП, чем длину импульса измерять?
Аватара пользователя
coder_perm
 
Сообщения: 185
Зарегистрирован: 11 авг 2009, 22:39
Откуда: Пермь
Skype: kudrin_anton
прог. языки: assembler

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение zuluss008 » 28 ноя 2011, 00:21

я сначала тож думал так поступить, но в arduinoIDE есть функции, определяющие фронт/спад импульса.
Соответственно и функции для работы с ШИМ на входе тоже должны быть...
Тем более, от использования RC точность измерений разве не пострадает?
zuluss008
 
Сообщения: 95
Зарегистрирован: 19 окт 2010, 23:13
Откуда: Республика Беларусь, г. Брест
Skype: zuluss008
прог. языки: AHDL, spectrum BASIC, Wiring, visual C++
ФИО: Зуев Евгений Николаевич

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение coder_perm » 28 ноя 2011, 02:28

Не скажу на сколько упадет точность, много факторов. Но простота реализации, а соответственно отказоустоичивость выше.
Ваш проект, вам видней, что важнее.
Аватара пользователя
coder_perm
 
Сообщения: 185
Зарегистрирован: 11 авг 2009, 22:39
Откуда: Пермь
Skype: kudrin_anton
прог. языки: assembler

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение =DeaD= » 28 ноя 2011, 07:34

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

Re: Как измерить скважность ШИМ-сигнала с помощью Arduino?

Сообщение RealRobot » 28 ноя 2011, 08:33

pulseIn(pin, value, timeout)
http://igrybogov.com - ну о.о.очень интересно
сознание определяет бытие, улыбнись своему отражению
RealRobot
 
Сообщения: 340
Зарегистрирован: 18 окт 2007, 23:46
Откуда: Москва
прог. языки: С++ , 1С :-)
ФИО: Михаил


Вернуться в Новичкам или основы основ роботостроения.

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

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

Mail.ru counter