Parallax RFID和Johnny-Five

时间:2013-10-12 15:28:30

标签: node.js arduino johnny-five

我有一个视差RFID阅读器,我很困惑在使用johnny-five时从哪里开始。我试图用它作为指导 - http://www.gumbolabs.org/2009/10/17/parallax-rfid-reader-arduino/ - 但显然不使用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 个答案:

答案 0 :(得分:2)

Johnny五是机器人的Node.js,但是在你的计算机上。 javascript代码在您的计算机上执行。在Arduino上,您需要上传StandarFirmata as explained on their github page

Arduino的代码< - >如果只为Arduino,你给我们的RFID教程。如果你想将它与johnny五一起使用,你需要自己实现代码或者寻找在github上为你做这件事的人。如果你遇到这个问题,很可能其他人也有这个问题,并且可能找到了答案。

使用node serialport,您将能够阅读Arduino的Serial.print()输出。您可以输出json并使用serialport在计算机上使用javascript解析它。

希望它有所帮助!

如果您需要更多帮助,请随时提出! :)

编辑1:

因此,如果我理解正确:您将RFID阅读器连接到Arduino。 Arduino连接到计算机。您想要读取RFID并将信息发送到计算机。计算机必须运行服务器,并且必须能够从USB端口获取数据。从iPad连接到服务器的所有人都应该实时查看信息。这是对的吗?

如果是这样,您需要一个节点服务器node-serialport来从USB和一个Web应用程序(如express.js)获取数据,以向您的客户显示数据。最好的方法是将数据格式化为json,以便在服务器上轻松解析。

编辑2: 好的!所以在这里你可以找到Tom Igoe关于如何使用Arduino和Node.js的两个很棒的教程。

  • Arduino Serial to Browser:在这里,您将学习node-serialport的基础知识以及如何将其与Arduino一起使用。
  • Serial to Browser using node.js:您将在此处了解如何JSON发布您的Arduino数据,以便通过web appwebsocket轻松访问这些数据。他使用加速度计来获取数据,但我想你可以直接使用你的RFID数据。

我确信在此之后你会有更多的问题,但这将是一个好的开始!

希望它有所帮助! :)

答案 1 :(得分:2)

Firmata协议(Johnny-Five用于与Arduino通信的协议)不支持SoftwareSerial或放弃板的RX / TX线。这意味着Johnny-Five 无法支持此设备。

编辑:Firmata协议最近增加了对硬件和软件序列的支持,这意味着很快就会添加RFID组件支持