node.js에서 PN532를 사용하여 NFC 읽기

3879 단어 RaspberryPiNFCNode.js
이번에는 Raspberry pi에서 node.js + typescript로 쓰는 앱에서 NFC를 읽을 기회가 있고 조사했기 때문에 메모.

하드웨어



NFC 리더는 이

내용은 PN532

이것을 Raspberry Pi의 GPIO 핀 헤더에 Grove 커넥터 생식 간식으로 연결했다. 이런거.
htps : // 아 mz 응. 및 / 3wxkSB

UART 사용 가능



Raspberry Pi 3 이후에서는 Bluetooth 연결로 uart를 사용하고 있기 때문에, 그대로는 uart를 사용할 수 없다 (이것 모르고 상당히 시간을 잃었다 ...).

Device Tree Overlay의 miniuart-bt로 처리했습니다.

아래 등 참조.



node.js



PN532의 디버드라는 아래의 라이브러리를 사용.

사용법은 이런 느낌.
import SerialPort from 'serialport';
import pn532 from 'pn532';

const DEVICE_FILE_PATH = '/dev/serial0';
const SERIAL_OPTION = { baudRate: 115200 };
const serialPort = new SerialPort(DEVICE_FILE_PATH, SERIAL_OPTION);
const rfid = new pn532.PN532(serialPort);

// Poll for a tag
rfid.on('ready', async () => {
    console.log('Listening for a tag scan...');
    rfid.on('tag', (tag) => {
        console.log(tag);
        console.log('tag:', tag.uid);
    });
});

움직이면 이런 느낌.



실제로는, 상기를 랩 한 domain 오브젝트 작성해, tag를 검지했을 때에 eventemitter로 날리고 있다.

좋은 웹페이지 즐겨찾기