nodejs로 Arduino 작동을 간단하게 구현

高洛峰
풀어 주다: 2017-01-04 16:47:20
원래의
1810명이 탐색했습니다.

Javascript를 사용하여 하드웨어를 작동하는 것은 더 이상 드문 일이 아닙니다.

cylonjs는 실제로 "기계"를 운영하기 위한 js 프레임워크입니다. 공식 홈페이지에 소개된 내용은 다음과 같습니다.

Cylon.js는 로봇공학을 위한 JavaScript 프레임워크입니다. 물리적 컴퓨팅, 그리고 사물인터넷을 통해 로봇과 기기에 명령을 내리는 것이 놀라울 정도로 쉬워졌습니다.

간단히 말하면 JS를 사용하여 Arduino( 마이크로 컨트롤러와 유사한 것)

코드의 예 부분:

nodejs로 Arduino 작동을 간단하게 구현

자세히 설명하겠습니다

cylonjs 설치
var Cylon = require("cylon");
// Initialize the robot
Cylon.api('http');//这个是用来连接本地浏览器的
Cylon.robot({//调用robot函数,并传入一个大对象来配置
 // Change the port to the correct port for your Arduino.
 connections: {//连接项定义小对象,用来配置连接arduino
  arduino: { adaptor: 'firmata', port: '/dev/cu.wchusbserial1420' }//prot是我arduino的在mac上连接的端口
  //firmata是一个PC与MCU通讯的一个常用协议。其遵旨是能与任何主机PC软件包兼容,这样可方便地将对协议的支持加入软件系统中。Firmata起初是针对于PC与Arduino通讯的固件(Firmware),其目标是让开发者可以通过PC软件完全地控件Arduino。
 },
 
 devices: {//设备,定义要操作的具体器件,这里是led,pin口是1
  led: { driver: 'led', pin: 1 }//
 },
 
 work: function(my) {//驱动函数,
  every((3).second(), function() {//每3秒,闪一下((3).second()貌似是lodash,我猜的,没用过,嘿嘿)
   my.led.toggle();//my应该是指向他自己
  });
 }
}).start();//配置好了之后就开始工作
로그인 후 복사
로그인 후 복사

알겠습니다. 첫 번째 단계는 설치입니다.

npm install cylon

새 프로젝트


새 디렉터리를 만들고(내 디렉터리는 로봇입니다) 그런 다음 터미널에서 (저는 Mac을 사용하고, Window라면 git bash에서 합니다.)

npm init

을 입력합니다. 기본적으로 계속 Enter를 누르지만 변경했습니다. Main.js에 대한 항목 파일:


진입점: (index.js) main.js


그런 다음 터미널에 다음을 입력합니다.

nodejs로 Arduino 작동을 간단하게 구현main.js 터치

새 main.js 파일을 생성하기만 하면 Windows에서 수동으로 빌드합니다.


main.js에서:

node main.js를 처음 실행했을 때 cylon-firmata 모듈을 찾을 수 없다는 오류 메시지가 표시되었습니다.

var Cylon = require("cylon");
// Initialize the robot
Cylon.api('http');//这个是用来连接本地浏览器的
Cylon.robot({//调用robot函数,并传入一个大对象来配置
 // Change the port to the correct port for your Arduino.
 connections: {//连接项定义小对象,用来配置连接arduino
  arduino: { adaptor: 'firmata', port: '/dev/cu.wchusbserial1420' }//prot是我arduino的在mac上连接的端口
  //firmata是一个PC与MCU通讯的一个常用协议。其遵旨是能与任何主机PC软件包兼容,这样可方便地将对协议的支持加入软件系统中。Firmata起初是针对于PC与Arduino通讯的固件(Firmware),其目标是让开发者可以通过PC软件完全地控件Arduino。
 },
 
 devices: {//设备,定义要操作的具体器件,这里是led,pin口是1
  led: { driver: 'led', pin: 1 }//
 },
 
 work: function(my) {//驱动函数,
  every((3).second(), function() {//每3秒,闪一下((3).second()貌似是lodash,我猜的,没用过,嘿嘿)
   my.led.toggle();//my应该是指向他自己
  });
 }
}).start();//配置好了之后就开始工作
로그인 후 복사
로그인 후 복사

사실 이 모듈을 현재 디렉터리에 설치했는데 사실 cylon도 설치해야 합니다.

nodejs로 Arduino 작동을 간단하게 구현npm install cylon cylon-firmata

그런 다음 node main.js를 실행합니다.


오류를 신고하시겠습니까? 아직 아두이노를 연결하지 않았기 때문이죠.

nodejs로 Arduino 작동을 간단하게 구현arduino에 연결할 때 arduino의 포트를 찾는 방법은 main.js에 다음 코드가 있습니다.

prot의 값은 어디에서 오는가요? ? 이때 gort를 사용하게 됩니다

nodejs로 Arduino 작동을 간단하게 구현gort 소개:

GORT는 RobotOps용 명령줄 툴킷입니다

하드웨어 감지를 위한 명령줄 도구라고 생각합니다,

설치:

brew install hybridgroup/tools/gort

물론 Windows 또는 Linux 사용자라면 공식 웹사이트 지침을 직접 읽어볼 수 있습니다. gort 설치


다음 코드를 실행하여 포트를 감지합니다

gort scan serial


을 실행합니다.

nodejs로 Arduino 작동을 간단하게 구현gort arduino install

결과는 다음과 같습니다.

설치는 성공했지만 Brew Link 단계는 성공하지 못했다는 의미입니다. 이유는 /usr/local/lib가 쓰기 가능하지 않기 때문입니다. 즉, 권한을 입력하고

nodejs로 Arduino 작동을 간단하게 구현 실행하십시오: (whoami는 컴퓨터의 사용자 이름입니다)

sudo chown -R whoami /usr/local/lib

다음을 실행합니다:


즉, 성공적인 Brew 링크가 없으면 링크를 다시 실행합니다. .

nodejs로 Arduino 작동을 간단하게 구현그런 다음:

gort arduino 업로드 Firmata / dev/tty.wchusbserial1420


이 성공했습니다. 이때 다시 실행하세요: node main.js

nodejs로 Arduino 작동을 간단하게 구현

arduino가 응답하고 tx라는 LED가 3초마다 깜박입니다. 브라우저에

https://127.0을 입력하세요. 0.1:3000nodejs로 Arduino 작동을 간단하게 구현

nodejs로 Arduino 작동을 간단하게 구현

아두이노 관련 기사의 더 많은 nodejs 단순 구현을 보려면 PHP 중국어 웹사이트를 주목하세요!


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿