wrun 0 25 апреля, 2014 Опубликовано 25 апреля, 2014 · Жалоба День добрый. Такая ситуация, используем считыватели Parsec PR-A05 и Arduino Nano в качестве контроллера входящей информации. Протокол Weigand-26. При подключении кабелем 30м - всё работает хорошо. А вот при Уменьшении длины кабеля - возникают проблемы (приходит не весь код, 15-24 бита примерно из 26). Причем чем короче кабель - тем чаще ошибки, напрямую - самая худшая ситуация. Вопросы: 1) В чем может быть дело? 2) Как можно решить проблему? (Вкладывать бухту кабеля - не предлагать) P.S. подразумеваю негодование специалистов к Arduino - прошу не осуждать выбор, опыта мало, делаем как можем! Буду благодарен за любую подсказку! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
=AK= 12 25 апреля, 2014 Опубликовано 25 апреля, 2014 · Жалоба 1) В чем может быть дело? В плохом согласовании источника и приемника. Например, уровень сигналов считывателя больше, чем питание приемника. Ну и кабель, небось, без малейшего согласования прямо на вход Ардуины присобачили? А в кабеле, поди, звон идет. 2) Как можно решить проблему? (Вкладывать бухту кабеля - не предлагать) - На стороне приемника добавить резисторы с сигнальных линий на землю, чтобы уменьшить звон. Порядка 1к, или менее. - На стороне приемника добавить резисторы с сигнальных линий на вход(ы), порядка 100 ом - На стороне передатчика добавить резисторы с выходов на сигнальные линии, тоже порядка 100 ом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RabidRabbit 0 25 апреля, 2014 Опубликовано 25 апреля, 2014 · Жалоба Стандартная схема подключения: http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%..._electrical.png Подтягивающие к плюсу питания резисторы на входе необходимы - со стороны считывателя легко может быть "открытый коллектор" :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
wrun 0 25 апреля, 2014 Опубликовано 25 апреля, 2014 · Жалоба Стандартная схема подключения: http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%..._electrical.png Подтягивающие к плюсу питания резисторы на входе необходимы - со стороны считывателя легко может быть "открытый коллектор" :) По этой схеме пробовали (со стороны контроллера)... И подтягивающие и последовательные - ничего... Даже вроде хуже становилось! По вольтажу вроде с обоих сторон 5В... В плохом согласовании источника и приемника. Например, уровень сигналов считывателя больше, чем питание приемника. Ну и кабель, небось, без малейшего согласования прямо на вход Ардуины присобачили? А в кабеле, поди, звон идет. "А в кабеле, поди, звон идет." - так проблема как раз Без кабеля, какой звон ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RabidRabbit 0 25 апреля, 2014 Опубликовано 25 апреля, 2014 · Жалоба Ищите баги в программе, что я могу сказать :) На всякий случай прилагаю схему и программу для преобразователя Wiegand -> RS232. Полученное по интерфейсу Wiegand (до 64 бит включительно) выплёвывает в RS232. Работал как часы со всеми считывателями , которые попадались под руку (что неудивительно, ибо конструкция и программа тупы до безобразия), также это устройство помогло ловить баги в одном из считывателей :) Да, в реальном устройстве тинька работает от внутреннего генератора на 1.2 МГц, временные константы в программе именно для этого случая. wt12.7z Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
wrun 0 25 апреля, 2014 Опубликовано 25 апреля, 2014 · Жалоба Ищите баги в программе, что я могу сказать :) На всякий случай прилагаю схему и программу для преобразователя Wiegand -> RS232. Полученное по интерфейсу Wiegand (до 64 бит включительно) выплёвывает в RS232. Работал как часы со всеми считывателями , которые попадались под руку (что неудивительно, ибо конструкция и программа тупы до безобразия), также это устройство помогло ловить баги в одном из считывателей :) Да, в реальном устройстве тинька работает от внутреннего генератора на 1.2 МГц, временные константы в программе именно для этого случая. Уффф, я весьма благодарен, правда даже прочитать толком не смог, но вечерком поизучаю... (Не писал на Асемблере...) Проблема то как раз в том что один и тот же приёмник с одним кодом на раздных подключениях ведет себя по разному.. Я признаю не качество кода, но вот работает ведь.... Еще раз спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexvu 5 28 апреля, 2014 Опубликовано 28 апреля, 2014 · Жалоба Попробуйте конденсаторами линии зашунтировать, порядка 100-1000 пф. Хотя причина, вероятнее всего, в некорректной программе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 28 апреля, 2014 Опубликовано 28 апреля, 2014 · Жалоба И "землю" от считывателя до контроллера сделать пожирнее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться