NodeMCU: Wiegand не работает на одном устройстве, но работает на другом
Я использую NodeMCU и рабочий код для чтения данных Wiegand с этой библиотекой.
Мне удалось успешно прочитать сигнал Wiegand с этого устройства.
Однако у меня также есть это новое устройство AR-721H, и я могу не заставить Wiegand работать. Это руководство по устройству.
На микроконтроллер абсолютно ничего не приходит. Все подключено идентично рабочему устройству.
По мануалу все должно работать, но я в недоумении.
Может кто-нибудь сказать мне, что я делаю неправильно?
Продавец в магазине сказал мне что-то о необходимости контроллера, который преобразует RS485 в RS232, но я понятия не имею, что это значит. Я уже заставил его работать с другим устройством...
@Ivan, 👍0
1 ответ
Лучший ответ:
Это довольно загадочно из-за небольшого количества информации в этом (несколько хаотичном) "руководстве", но я интерпретирую это так, что интерфейс Wiegand является входным портом, а не выходным. порт. Он предназначен для подключения этого порта к внешнему считывателю карт или клавиатуре в качестве удаленного интерфейса (обычно с другой стороны двери к этому устройству).
Для связи с Arduino вы должны использовать интерфейс RS-485. Для этого вам понадобится коммутационная плата MAX485.
- NodeMCU с RFID RC522 и LCD-модулем интерфейса I2C вместе
- Взаимодействие NodeMCU Modbus с Multi-Switch давления
- Как преобразовать массив байтов в одну переменную
- Ошибка стека «мягкий сброс WDT»: RFID-RC522 с NodeMCU
- Контакты NodeMcu и светодиод RGB
- Как подключить Sparkfun M6E Nano UHF Rfid-считыватель и ESP8266 NodeMCU 0.1
- Программа Arduino для сканирования двух разных RFID-карт в одной программе? Я использую nodemcu-esp8266, программу чтения rc522 и Firebase.
- Ошибка запроса HTTP myphp RFID
Я подозреваю, что продавец говорил об использовании 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