宝哥软件园

nodejs简单实现操作arduino

编辑:宝哥软件园 来源:互联网 时间:2021-09-07

用Javascript操作硬件并不罕见。

所以作为电子专业的我也打算尝试用js驱动arduino;

如果你想操作这些底层硬件,肯定需要一些工具。我在这里介绍的工具主要是赛昂js和gort

赛昂js实际上是一个操作“机器”的js框架。官网的介绍是这样的:

赛昂. js是一个用于机器人、物理计算和物联网的JavaScript框架。这使得指挥机器人和设备变得非常容易。

简单来说,就是用JS来操作硬件。他支持很多硬件平台,比如arduino(类似MCU的东西)

举一些代码的例子:

var赛昂=require('赛昂');//初始化robotcylon . API(' http ');//这是赛隆. robot({//用于连接本地浏览器({//调用robot函数并传入一个大对象进行配置//将端口更改为您的arduino.connections :的正确端口{//连接项定义了一个小对象。用于配置和连接arduino arduino : { adapter : ' firmata ',port 3360 '/dev/Cu . wchusbseria 1420 ' }//prot是我的arduino在mac上连接的端口//firmata是PC和MCU之间通信的常用协议。它的目标是与任何主机PC软件包兼容,以便可以轻松地将对协议的支持添加到软件系统中。Firmata最初是用于PC和Arduino之间通信的Firmware,其目标是让开发者通过PC软件完全控制Arduino。},device : {//设备,定义具体要操作的设备,这里是LED,PIN口是1LED : {Driver :' LED ',PIN : 1}//},Work3360功能(my){//驱动功能,隔((3)。第二(。Function() {//每3秒,闪一下((3)。second()好像是lodash,我猜,没用过,呵呵)my . led . toggle();//我的应指自己});}}).start();//配置完成后开始工作。下面我们来详细解释一下

安装赛昂人

好的,第一步必须安装:

Npm安装赛昂新项目

创建一个新目录(我的是robot),然后在终端输入(如果我用mac,用git bash操作,如果我用window)

基本上,npm init可以一直按回车键,但是我把我的入口文件改成了main.js:

入口点:

然后,在终端输入:

Touch main.js是一个新的main.js文件,由windows自己手动创建。

然后在main.js中:

var赛昂=require('赛昂');//初始化robotcylon . API(' http ');//这是赛隆. robot({//用于连接本地浏览器({//调用robot函数并传入一个大对象进行配置//将端口更改为您的arduino.connections :的正确端口{//连接项定义了一个小对象。用于配置和连接arduino arduino : { adapter : ' firmata ',port 3360 '/dev/Cu . wchusbseria 1420 ' }//prot是我的arduino在mac上连接的端口//firmata是PC和MCU之间通信的常用协议。它的目标是与任何主机PC软件包兼容,以便可以轻松地将对协议的支持添加到软件系统中。Firmata最初是用于PC和Arduino之间通信的Firmware,其目标是让开发者通过PC软件完全控制Arduino。},device : {//设备,定义具体要操作的设备,这里是LED,PIN口是1LED : {Driver :' LED ',PIN : 1}//},Work3360功能(my){//驱动功能,隔((3)。第二(。Function() {//每3秒,闪一下((3)。second()好像是lodash,我猜,没用过,呵呵)my . led . toggle();//我的应指自己});}}).start();//配置后开始工作。当我开始运行node main.js时,错误显示找不到赛昂-firmata模块

事实上,我在当前目录中安装了这个模块,但我也安装了赛昂。下面的操作没问题

Npm安装赛昂赛昂-firmata,然后执行nodemain.js:

错误报告?因为我还没有连接arduino。

连接arduino时如何找到arduino的端口,main.js中有这样的代码:

你是如何得到波特的价值的?此时将使用Gort

Gort介绍:

这是一个机器人操作的命令行工具包

我认为它是一个检测硬件的命令行工具。

安装:

brew Install Hybrid Group/Tools/Gort当然,如果你是windows或linux,可以阅读官网的说明:Install Gort。

然后执行以下代码来检测端口

gort扫描系列

然后执行:

gort arduino安装

结果如下:

说明我安装成功了。但是,brew链接的步骤失败,因为/usr/local/lib不可写,即没有写权限。

所以执行:(whoami是你电脑的用户名)

Sudochow-r whoami/usr/local/lib,然后执行:

也就是对brew链接没有成功的再次执行链接。

然后:

gort arduino上传firmata/dev/tty . wchusbseria 1420

成功了。此时执行:nodemain.js。

阿尔杜伊诺回应道。名为tx的LED3闪烁3秒钟。在浏览器中输入https://127.0.0。

哈哈,成功了。好的,我在这里写。我以后会继续学习和写相关的文章。

顺便说一下,你需要一个驱动程序来连接mac和arduino。我叫阿尔杜伊诺。我安装了驱动ch340,下载地址

更多资讯
游戏推荐
更多+