Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 13 ноя 2019, 11:32

Часовой пояс: UTC + 3 часа [ Летнее время ]



Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3, 4  След.
Автор Сообщение
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 19 сен 2014, 22:13 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Явно что-то связанное со временем перестройки АРУ. Между максимумами всегда 60+-2 периода несущей независимо от расстояния до преграды. А если преграда настолько далеко, что ответ TSOP'а лежит в районе 60 периодов по длительности, то первый (левый) максимум скрывается, исчезает.
Изображение
Сразу не догадался посмотреть осцилом на выходе TSOP'а, а там вот такое (нижний луч):
http://www.youtube.com/embed/RvvBWgiSbF8
(Зы.. У меня подсчет длительности - просто инкремент в каждом периоде если приёмник даёт "0".)
Нужно всё же переходить к формированию пачки с паузами.


Последний раз редактировалось UnKaiF 08 ноя 2014, 17:00, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 20 сен 2014, 19:57 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Пощупал вариант по совету GetChiper. 255 пачек по 10 периодов несущей с паузами 10-12 периодов несущей. Ёмкость конденсатора пришлось соответственно увеличить в 10 раз, т.е. 470 uF (см. схему выходного каскада). Время замера составило 0.144 секунды, а перезаряд конденсатора всю оставшуюся секунду. Т.е. частота сэмплирования не более 1 Гц, что для таких задач как обнаружение движения не подходит. Можно, конечно, пожертвовав дополнительным пином GPIO организовать ускоренный заряд, но это имхо, "городульки".[Upd: Мой контроллер формирует пачки программно, соответственно, процессорное время будет сожрано почти всё .] Дальность обнаружения, чисто по субъективным оценкам, упала раза в два, а ближний предел (когда ловятся все посылки) отодвинулся. Видимо за такое большое время АРУ успевает отстраиваться. В принципе, это ерунда - лечится подбором R и C. Из плюсов - на распределении один максимум и данные плотнее, т.е. фактическая разрешающая способность лучше.
Изображение
Осцилограммы тока пачки:
http://www.youtube-nocookie.com/embed/XLT-_AO7zfI
В общем, буду продолжать эксперименты ибо это слишком медленно для меня. Попробую "гибридный" метод, - т.е. поделю 255 своих импульсов на пачки по, допустим, 32, с замером длительностей. Либо одна пачка 32 периода, а разрешение получу используя оверсэмплинг.


Последний раз редактировалось UnKaiF 08 ноя 2014, 17:03, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 21 сен 2014, 19:45 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Пачка 32 периода. Частота следования 64Hz. Конденсатор 6.8uF.
Сырые данные: (разрешение 5 бит, частота выборки 64 герц)
Изображение
Шкала по вертикали 0-31.
После оверсэмплинга: (разрешение 8 бит, частота выборки 8 герц)
Изображение
Шкала по вертикали 0-255.
Как видно, - короткая пачка помогла избавится от второго максимума на распределении. А вот бОльшая крутизна спада тока диодов стабильности данным не добавила. Видимо, TSOP всё ж таки не может "соображать" быстрее.


Последний раз редактировалось UnKaiF 08 ноя 2014, 17:07, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 22 сен 2014, 21:19 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 15 май 2011, 23:00
Сообщения: 1930
UnKaiF писал(а):
Пощупал вариант по совету GetChiper. 255 пачек по 10 периодов несущей с паузами 10-12 периодов несущей. Ёмкость конденсатора пришлось соответственно увеличить в 10 раз, т.е. 470 uF (см. схему выходного каскада). .....


Отличная работа! На сделанных видео сразу стала видна проблема замеров при формировании непрерывного сигнала (первый способ). По ходу когда TSOP начинает принимать длинный пакет импульсов он привязывается (настраивает АРУ) на амплитуду импульсов начала пачки. После передачи определенного количества импульсов их амплитуда уменьшается на столько что TSOP начинает считать их помехами и считает что пачка закончена. Вот тут, скорей всего, когда TSOP уже не принимает импульсы его АРУ до окончания всей пачки успевает перестроиться (как раз за эти самые 60 периодов) и принять еще часть импульсов с конца пачки. Отсюда и два пика.

По поводу метода коротких пачек выглядит все красиво, но по моему не нужно столько много пачек формировать для замера. По картинке разброс замеров составляет не менее 10%, соответственно можно уменьшить количество пачек раз в десять не сильно потеряв в точности.

Попробуй формировать 32 пачки по 10 импульсов. Для такого количества пачек и конденсатор нужен меньше и перезаряжаться он будет быстрее.
Еще попробуй поэкспериментировать с длинной паузы от минимума 10 импульсов до, скажем, 60-80 (это будет влиять на реакцию АРУ и наверное точность замера).

[Upd: Мой контроллер формирует пачки программно, соответственно, процессорное время будет сожрано почти всё .] - выдавай сигнал на светодиоды не программно, а аппаратно подключив светодиоды к выводу SPI или UART и подавая для передачи байты типа 01010101 а паузы формируй нулями.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 24 сен 2014, 12:05 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Извиняюсь, - исправил последний пост и картинку, так как была ошибка в алгоритме.

По поводу нестабильности положения заднего фронта импульса с TSOP есть такая версия. Судя по даташиту для обнаружения присутствия сигнала TSOP'у нужно от 7 до 15 периодов несущей на входе. Соответственно после обнаружения (когда уже на выходе "0") нужно чтобы сигнал полностью отсутствовал не менее 6 периодов прежде чем TSOP примет решение выдать "1". Это опять таки для защиты от помех. Вдруг один импульс посреди пачки пропал ? Не считать же это окончанием пачки ?
 
(Обвёл красным нужную часть выражения.)
Изображение

Поскольку "наш" сигнал не продадает полностью, а просто убывает, то и решение об отсутствии его принимается в произвольный момент времени. То есть начинка приёмника на это не рассчитана. Поэтому и имеем на выходе не чёткие отсчёты, а сплошную "статистику".

Нет, с моей точки зрения не красиво оно выглядит. Не знаю, как там с реальным разрешением у УЗ дальномеров, ибо не щупал оные, но здесь, учитывая амплитуду шума, получается: реальное разрешение в импульсном методе не более 4 бит на сэмпл, а с замером длительности не более 3 бит на сэмпл.
Попробую "уплотнить" импульсный метод. Во-первых - отказаться от 8 бит (255 пачек) в пользу 7-и или 6-и бит (127 и 64 пачки, соответственно) разрешения на один замер. Это сразу же уменьшит время замера в разы, что позволит мерять чаще. Во-вторых - вместо пауз попробую выдавать сразу следующую пачку, но в противофазе с предыдущей. Т.е. 10101010010101010. Пока не знаю, будет ли этот трюк работать, - отпишусь.

По поводу контроллера - это же весёлый pic12f675. На борту из периферии EEPROM, АЦП, аналоговый компаратор, два простых таймера даже без режима сброса по совпадению, не говоря уже о всяких ШИМ. Подсистема прерываний - один вектор, а источник предлагается определять программно. Короче - этот Microchip, такой микрочип ! :mrgreen:


Последний раз редактировалось UnKaiF 08 ноя 2014, 17:22, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 24 сен 2014, 19:03 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Опыт с противофазной пачкой. R2 закорочен, так что уровень ИК излучения не модулируется. Результат в лучших традициях квантовой механики - выходной импульс и прерывается и нет :lol:
http://www.youtube-nocookie.com/embed/sn5Lp_SM4Hk
При больших уровнях входного сигнала приемник всегда воспринимает посылку как одну пачку. При среднем и низком уровне см. видео.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 24 сен 2014, 21:56 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 15 май 2011, 23:00
Сообщения: 1930
Чет я не понял про противофазу :bumbed:
Подробней можно?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 25 сен 2014, 00:18 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Ну, как бы это на пальцах ? Мы вставляем паузу между пачками импульсов для того чтобы приемник изменил своё состояние с "прием" на "нет приема". А пауза - штука длительная, т.е. затратная по времени. Так же известно, что некоторые виды детекторов синхронизируются с фазой входного сигнала и если она резко меняется на противоположную, то во время "пересинхронизации" выдают это самое "нет" (Напряжение АПЧиФ, так сказать). Длительность перестройки зависит от уровня входного сигнала. Чем сильнее сигнал - тем короче время перестройки. Это мы и наблюдаем в опыте. При слабом сигнале импульс престройки длится достаточно долго для того, чтобы (иногда) "перекинуть" логику TSOP'а в противоположное состояние, а при сильном, соответственно, нет. Я просто надеялся, что "времена" встроенные в логику позволят провернуть этот трюк.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 25 сен 2014, 18:41 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 15 май 2011, 23:00
Сообщения: 1930
Слишком как то все тонко. Боюсь такой трюк может не работать на всех видах TSOP. Плюс время повторного запуска у всех будет точно разное, что скажется на количестве принятых импульсов при одинаковых условиях (хотя это не очень критично - все равно измерения в "попугаях")

Мне бы было интересно попробовать немного другой метод (1-ИК-диод светит; 0-нет)
вместо 10101010010101010
_______пачка_____пауза

сделать 1010101011111111
________пачка_____пауза

Схемотехника TSOP должна воспринимать постоянную засветку как паузу (единственно может понадобится больше импульсов в нормальной пачке, для того чтобы ару успело сработать - нужно пробовать).
Конденсатор во время постоянной засветки ИК-светодиода будет разряжаться в 2 раза быстрей, что будет создавать более ощутимые ступени уровня сигнала в каждой пачке.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: TSOP как датчик расстояния. Плохой результат- тоже резул
СообщениеДобавлено: 25 сен 2014, 21:19 
Не в сети

Зарегистрирован: 31 авг 2014, 14:08
Сообщения: 38
Насчёт разных моделей TSOP я с вами согласен.
Про остальное не понял. Какую выгоду мы получим при таком методе ? Не думаю, что приёмнику есть разница - засвечивают его или просто оставляют в покое. Время нужное для перехода из 0 в 1 по моему одинаково в обоих случаях. Или у вас другие соображения ? Объясните подробнее.

Может не совсем удачно рассказал про противопачку, но идея была такая: вместо того чтобы гультаить в паузе, ожидая переключения в 1, можно было бы принимать сразу следующую пачку.
Изображение


Последний раз редактировалось UnKaiF 08 ноя 2014, 17:09, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3, 4  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


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

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


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB