2013-10-12 7 views
0

나는 시차 RFID 리더기를 가지고 있는데 조니니 -5를 사용할 때 어디에서 시작해야하는지 혼란 스럽다. 나는 지침으로 이것을 사용하려고 애 쓰고있다. - http://www.gumbolabs.org/2009/10/17/parallax-rfid-reader-arduino/ - 분명히 johnny-five는 사용하지 않는다.시차 RFID와 Johnny-Five

johnny-five 개체로 데이터를 읽고 센서와 상호 작용해야하는지, 아니면 건너 뛰고 serialport을 직접 사용해야하는지 여부는 잘 모르겠습니다. serialport을 정확히 사용하면 어떻게됩니까?

https://github.com/RyanHirsch/j5-rfid

출력 :

1381834286406 Board Connecting... 
1381834286421 Serial Found possible serial port /dev/cu.usbmodemfa141 
1381834286422 Board -> Serialport connected /dev/cu.usbmodemfa141 
open 
err undefined 
results 3 

코드 :

var sp = new SerialPort("/dev/cu.usbmodemfa141", { 
    parser: serialport.parsers.readline("\r") , 
    baudrate: 2400 
}, false); 

sp.open(function() { 
    console.log('open'); 
    sp.on('data', function(data) { 
    console.log('data received: ' + data); 
    }); 
    sp.write("ls\n", function(err, results) { 
    console.log('err ' + err); 
    console.log('results ' + results); 
    }); 
}); 

답변

2

조니 다섯 로봇하지만 컴퓨터에 Node.js를합니다. 자바 스크립트 코드는 컴퓨터에서 실행됩니다. Arduino에서 StandarFirmataas explained on their github page을 업로드해야합니다.

Arduino의 코드 < -> Arduino의 경우에만 제공 한 RFID 자습서. johnny 5와 함께 사용하려면 자아로 코드를 구현하거나 github에서 코드를 작성한 사람을 찾아야합니다. 이 문제가 발생하는 경우, 다른 사람도 그 문제를 가지고 있으며 답변을 찾았을 가능성이 있습니다.

node serialport을 사용하면 Arduino의 Serial.print() 출력을 읽을 수 있습니다. json을 출력하고 serialport을 사용하여 컴퓨터의 javascript로 구문 분석 할 수 있습니다.

희망이 있습니다.

도움이 더 필요하면 언제든지 문의하십시오. :)

편집 1 :

그래서 내가 제대로 이해한다면 : 당신은 아두 이노에 연결된 RFID 리더가 있습니다. Arduino는 컴퓨터에 연결되어 있습니다. 당신은 RFID를 읽고 그 정보를 컴퓨터에 보내고 싶습니다. 컴퓨터는 서버를 실행하고 USB 포트에서 데이터를 가져와야합니다. iPad에서 서버에 연결된 모든 사람들은 실시간으로 정보를보아야합니다. 그 맞습니까?

그렇다면 노드 서버 node-serialport을 USB에서 가져오고 express.js와 같은 웹 응용 프로그램을 사용하여 클라이언트에 데이터를 표시해야합니다. 가장 좋은 방법은 데이터를 json으로 포맷하여 서버에서 쉽게 파싱 할 수 있도록하는 것입니다.

편집 2 : 좋아요! 여기 Arduino와 Node.js를 사용하는 방법에 대한 Tom Igoe의 위대한 튜토리얼 두 개를 찾을 수 있습니다.

  • Arduino Serial to Browser : 다음은 node-serialport의 기본 방법과 아두 이노와 함께 사용하는 방법을 배울 수 있습니다.
  • Serial to Browser using node.js : Arduino 데이터를 web appwebsocket을 통해 쉽게 액세스 할 수 있도록 JSON 크기를 조정하는 방법을 배우게됩니다. 그는 데이터에 가속도계를 사용하지만 RFID 데이터를 직접 사용할 수 있다고 생각합니다.

나는 더 많은 질문이있을 것이라고 확신하지만 좋은 시작일 것입니다.

희망이 있습니다. :)

+0

추가됩니다 RFID 구성 요소 지원을 의미 하드웨어 및 소프트웨어 시리얼에 대한 지원을 추가 ()'? j5가 사용중인 경우 직렬 포트에 대한 경로는 무엇입니까 (j5가 영향을 미치나요?) – RyanHirsch

+0

일 필요는 없습니다. 그것은 정말로 당신이하고 싶은 것에 달려 있습니다. 질문 : 왜 RFID 데이터를 컴퓨터로 보내고 싶습니까? 그것 자체로 작동하지 않을 수 있습니까? 전체 프로젝트의 목적은 무엇입니까? 그것은 무관계 해 보일지 모르지만 아이디어 및/또는 솔루션을 상상하고 함께 나오면 도움이됩니다. 'serialport'는 그 자체로 사용할 수 있습니다 (일종의). – ladislas

+0

목표는 보드에 RFID를 읽게하고 그 결과를 웹 소켓을 통해 모든 클라이언트에 보냅니다. 시나리오는 학생들이 iPads를 가지고 있으며 방 앞쪽에 프로젝터가있는 초등 교실에서이 계획을 사용할 계획입니다. – RyanHirsch

2

Firmata 프로토콜 (Johnny-Five가 Arduino와 통신하기 위해 사용하는 프로토콜)은 SoftwareSerial을 지원하지 않거나 보드의 RX/TX 회선을 포기하지 않습니다. 즉, Johnny-Five 이 장치를 지원할 수 없습니다.

편집 : Firmata 프로토콜은 최근 on.ready`serialport`가이 여전히 j5.Board에 중첩되어야한다`사용하는 경우 가능성이 곧