我用node.js编写了一个加热控制器,在arduino yun上运行,它运行得很好。父进程与服务器通信并分叉正在进行控制的子进程。我使用fork(),johnny-five lib和firmata-sketch。
当我启动Yun,ssh到它并使用“node server.js”启动父进程(server.js)时,一切正常。 现在我想用init-script启动父进程。 建立连接并且子进程是分叉的(如果是,我得到一个事件)但是电路板正在关闭,我无法控制加热器。 这些是来自yun网页面板的日志:
Nov 26 10:49:47 YunA user.info sysinit: Socket open
Nov 26 10:49:47 YunA user.info sysinit: Status: IO
Nov 26 10:49:47 YunA user.info sysinit: Status: IO
Nov 26 10:49:55 YunA user.info sysinit: 1448531395493 Connected /dev/ttyATH0
Nov 26 10:50:00 YunA user.info sysinit: 1448531400890 Repl Initialized
Nov 26 10:50:01 YunA user.info sysinit: >> Ready
Nov 26 10:50:01 YunA user.info sysinit: Parent got message: app started
Nov 26 10:50:01 YunA user.info sysinit: waiting...
Nov 26 10:50:01 YunA user.info sysinit: Status: IO
Nov 26 10:50:01 YunA user.info sysinit: 1448531401651 Board Closing.
Nov 26 10:50:02 YunA authpriv.info dropbear[1586]: Child connection from 192.168.0.100:60051
Nov 26 10:50:02 YunA authpriv.info dropbear[1586]: Exit before auth: Exited normally
Nov 26 10:50:05 YunA authpriv.info dropbear[1587]: Child connection from 192.168.0.100:60055
Nov 26 10:50:05 YunA authpriv.info dropbear[1587]: Exit before auth: Exited normally
状态:IO是来自服务器的传入事件。 “app started”通过process.send()发送,父进程向服务器发送一个事件,该事件以另一个IO状态进行回复。董事会已关闭,我无能为力。
任何想法如何解决这个问题? 在此先感谢:)