NodeMCU: Wiegand не работает на одном устройстве, но работает на другом

Я использую NodeMCU и рабочий код для чтения данных Wiegand с этой библиотекой.

Мне удалось успешно прочитать сигнал Wiegand с этого устройства.

Однако у меня также есть это новое устройство AR-721H, и я могу не заставить Wiegand работать. Это руководство по устройству.

На микроконтроллер абсолютно ничего не приходит. Все подключено идентично рабочему устройству.

По мануалу все должно работать, но я в недоумении.

Может кто-нибудь сказать мне, что я делаю неправильно?

Продавец в магазине сказал мне что-то о необходимости контроллера, который преобразует RS485 в RS232, но я понятия не имею, что это значит. Я уже заставил его работать с другим устройством...

, 👍0


1 ответ


Лучший ответ:

1

Это довольно загадочно из-за небольшого количества информации в этом (несколько хаотичном) "руководстве", но я интерпретирую это так, что интерфейс Wiegand является входным портом, а не выходным. порт. Он предназначен для подключения этого порта к внешнему считывателю карт или клавиатуре в качестве удаленного интерфейса (обычно с другой стороны двери к этому устройству).

Для связи с Arduino вы должны использовать интерфейс RS-485. Для этого вам понадобится коммутационная плата MAX485.

,

Я подозреваю, что продавец говорил об использовании RxTx для передачи данных, доступных в [этом устройстве](http://www.soyal.com/data/files/download/manual/727H-V5-en.pdf) . Он сказал, что все программисты купили контроллер для преобразования сигнала, и я думаю, что он не знает, о чем говорит, так как устройство, которое я купил, использует Wiegand в качестве входа, как вы сказали. Я не понял твоего последнего предложения о MAX485, хотя..., @Ivan

RS485 — это специальный формат электрических сигналов для данных UART (последовательный). Вам нужно преобразовать это в UART с помощью MAX485, а затем вы можете подать его на контакты TX / RX (или другие контакты с помощью SoftwareSerial) и обмениваться данными с помощью Serial. Вам нужно знать скорость передачи данных и протокол, чтобы понять данные., @Majenko

Спасибо за разработку. Другими словами, клерк невежествен ... Поскольку устройство, которое я купил, даже не имеет возможности использовать UART., @Ivan

@Ivan Да, это так (или должно быть) - P3 - это порт RS-485., @Majenko

@Ivan Я могу сказать вам, что он должен работать на скорости 9600 бод, но каков будет контент данных, мне не удалось различить., @Majenko

@Иван Пэй Грязь! https://kupdf.net/download/721-727h-protocol-en_5bfba826e2b6f5d51b0dabd5_pdf, @Majenko

Итак, мы установили, что я дурак. Без проблем. Таким образом, NodeMCU имеет контакты RxTx (RS232), но это не будет работать с RS485 напрямую (чего я не увидел, спасибо за это), т.е. мне понадобится аппаратный преобразователь, как он сказал. Правильный? Могу ли я сделать это с помощью программного обеспечения?, @Ivan

Вам понадобится коммутационная плата MAX485. AR-721H <-> MAX485 <-> ESP8266. https://en.wikipedia.org/wiki/RS-485, @Majenko

Понятно... Спасибо за уточнение. Я действительно глуп с этим материалом, и я пытаюсь учиться. Подскажите пожалуйста, что делает плата MAX485? Он просто делает преобразование? Я не могу понять это из Google., @Ivan

Ты не дурак - ты просто еще не владеешь этой областью знаний. В одном режиме микросхема MAX485 принимает обычные данные UART с одной стороны и выдает эквивалент RS485 с другой. В другом режиме он получает данные RS485 с одной стороны и выдает данные UART с другой. Вы переключаете режимы с помощью контактов DE и RI (которые вы можете подключить к тому же выводу GPIO ESP8266). По сути, это прозрачный мост между UART и RS485, который работает в указанном вами направлении. В режиме TX вы можете Serial.write(...) данные. В режиме RX вы можете Serial.read() данные., @Majenko

@Ivan На самом деле, поскольку вы работаете на 3,3 В, вам нужен MAX ** 3 ** 485, так как это версия на 3,3 В., @Majenko

@ Иван Я пытаюсь обновить свой ответ диаграммой для вас, но редактор схем - полная задница., @Majenko

Я также мог бы использовать [преобразователь уровней](https://5.imimg.com/data5/UL/XU/MY-9380557/5v-to-3-3v-logic-level-converter-500x500.jpg) с MAX485 вместо MAX3485, верно?, @Ivan

@Ivan Конечно, но тогда это становится грязным., @Majenko

Да проводов много. Я так расстроен, что не могу найти простой считыватель RFID с клавиатурой... То ли устройства без клавиатуры работают с Wiegand, то ли с Wiegand есть всякие странные обходные пути... Почему зона контроля доступа такая сложный?, @Ivan

@Иван https://www.supremainc.com/en/hardware/compact-outdoor-rfid-reader-xpass-d2.asp, @Majenko

Скажите, пожалуйста, почему вы рекомендуете именно их?, @Ivan

Это то, о чем я только что узнал. У меня должен быть один, когда-нибудь приехавший на работу, над которой я работаю в данный момент. Я узнаю больше о работе с ними, когда клиент, наконец, отправит мне один., @Majenko