問題タブ [node-serialport]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1876 参照

node.js - Node-XBee と Node-SerialPort を使用して XBee からのシリアル データを理解する

node-serialport次のコードでnode-xbee使用され、Router AT 構成の XBee シリーズ 2 から着信 XBee フレームを読み取ります。ポテンショメータはAD0、XBee のピン 20 アナログ入力ピンに接続されています。4 つのアナログ ピンAD0AD1AD2AD3すべて有効で、 のみAD1が何かに接続されています。

受信したdata配列をどのように解釈しますか? frame_object0V が XBee に供給されると、dataelements で終わる配列を受け取ります0, 0, 2, 14, 2, 8, 2, 15。3.3V が XBee に供給されると、data配列は elements で終了します3, 255, 3, 255, 3, 255, 3, 255

これらの生の値をより意味のあるものに変換するにはどうすればよいでしょうか? 3, 2553.3V を表す値のペアのように見えますか? しかし、どのようにし3, 255て電圧の読み取り値を取得するのでしょうか?

シリアル ポート データの読み取り

XBeeピンに0Vが供給されたときのXBeeフレーム

XBeeピンに3.3Vが供給されたときのXBeeフレーム

0 投票する
1 に答える
483 参照

javascript - Arduinoのシリアルポートが悪いデータを与える?

Web(Socket.IO)でArduinoからデータを受信しようとしています。というわけで以下のコードを解説します。

アルドゥイーノ:

これにより、ボルトが温度に変換されます。シリアルディスプレイを開くと、希望どおりの出力が表示されます。

しかし、ノードで SerialPort を作成しましたが、その出力はちょっと奇妙です。私はこの方法でデータを受け取ります:

しかし、出力は次のとおりです。

ご覧のとおり、出力は次のようになります。

私のint/stringsを常に壊しているように見えます。

0 投票する
1 に答える
920 参照

jquery - node.js node-serialport には重大な書き込み遅延があります

シリアルポートを介してラズベリーパイに接続されたマイクロプロセッサで構成されるシステムがあります。ラズベリー pi は node-serialport を使用して node.js を実行し、Web ベースのユーザー インターフェイスを提供します。

Web インターフェイス経由で serialport に書き込もうとすると、マイクロコントローラから応答が返るまでに長い遅延 (10 秒から数分) が発生することがよくあります。つまり、serialport.write が何らかの形で遅れているということです。(エラーは表示されず、ポートも閉じられません..)これは、6番目のシリアルポート書き込みの後にかなり一貫して発生します..ブラウザをリロードすると、7番目のリクエストまで正常に動作します..

これは、node.js でシリアルポートを開いてデータをプッシュするためのルーチンです。

そして、http post リクエストを rpi に送信するためのこの jquery ルーチン:

Chrome でネットワーク コンソールを見ると、http ポスト リクエストがすぐに送信されるように見えます。ssh 経由で minicom 経由でコマンドをマイクロコントローラに送信すると、まったく問題はありません。

したがって、node-serialport または node.js が疑われますが、さらに掘り下げるにはどうすればよいですか?

誰でもアイデアはありますか?

0 投票する
1 に答える
9731 参照

node.js - nodejs でシリアル ポートを閉じることができません

ここでnode-serialport利用できるものを使用しています。ポートを開くと、読み取りは非常にうまく機能しますが、ポートを閉じることができません。

そのために次のコードを使用します。

コールバック関数は実行されません (コンソール出力なし)。誰か道を教えてくれませんか?

あるポートを閉じて、必要に応じて別のポートを開くか、ユーザーがページを変更した場合にポートを閉じることができるようにしたいと考えています。

1月

0 投票する
2 に答える
3952 参照

node.js - ラズベリーパイでサウンドを再生する方法 - ログインせずに起動した後

node.js スクリプトを使用してラズベリー パイでサウンドを再生する必要があります。自分でコマンドラインからスクリプトを開始するときは、すべて問題ありません。起動後に /etc/rc.local スクリプトから同じスクリプトを実行すると、「ps aux」を実行しているときに実行中のプロセスが表示されますが、音が聞こえません。また、40 秒後にノード スクリプトを開始しようとしました。これは、初期化などの時間が短すぎると思ったからですが、この時間内にコマンド ラインからスクリプトを開始し、音を聞くことができました...

root と pi の両方のユーザーを試しました。どちらも cmd から動作します (自動起動後にスクリプトを実行するユーザーが root ユーザーであるため)

プログラムを /usr/bin/node にリンクしました。そうしないと、起動時にプロセスを開始できなかったからです。

raspberryPi に Sereo ジャックを使用させました: amixer cset numid=3 1

私のnode.jsコードは次のとおりです。

私が試した起動のために:cronjobとして、crontab -eiが添付された後:@reboot /opt/node/bin/forever start /var/www/node/residenz/server.js

ファイル内でも同じことを試しました /etc/rc.local : /opt/node/bin/forever start /var/www/node/residenz/server.js

助けてくれてありがとう!

0 投票する
1 に答える
305 参照

node-serialport - serialport-node でドメインを使用する

node-serialport ライブラリはハッピー パスの状況で正常に動作していますが、エラー処理に対処したいと考えています。

現時点で取り組んでいる特定のテスト ケースは、単にシリアル デバイスが接続されていないということです。理想的には、問題が存在することを検出し、少し遅れてから再試行することができます。

問題は、次のエラーが発生し続けることです。

デバイスが接続されていないため、このようなことが予想されますが、キャッチする必要があります。try/catch は非同期であるため、明らかに機能しません。したがって、推奨される方法のように見える「ドメイン」を試しています。

これで目的の効果が得られると期待していますが、上記と同じエラーが発生します。

私が得ていないものを見ている人はいますか?

0 投票する
1 に答える
834 参照

node.js - node.jsでWebページをリロードした後に複数のSerialportを読み取る

Raspberry Pi で node.js を使用してシリアル デバイスに接続しようとしています。デバイスから Web ページにデータを送信し、Web ページからデバイスに制御データを送信し、データを Pi に記録して保存したいと考えています。これを実行すると:

ページを3回リロードすると、シリアルデータの読み取りごとに3つの出力が得られます。

sp.close() を元に戻す (un-rem) と、期待どおりにリロードするまで機能します (ポートは閉じられますが、再度開かれることはありません)。

sp.open() を io.on(connection) コールバックに配置し、ページのリロード中にシリアル データが入ってくると (sp.close() の後、sp.open() の前に)、次のようにクラッシュします。

Pi へのログインを妨げるため、リロード中にポートを閉じないことをお勧めします。

ノード v0.10.26 を使用していますが、v0.8.17 でも同じことが起こります

0 投票する
1 に答える
17863 参照

node.js - Node.jsを使用してシリアルポートにバイトを送信する

Node.jsを使ったシリアルポート通信でPOCを行う予定です。Node.jsの「serialport」モジュールをグーグルで見つけました。データ型でシリアル ポートにデータを書き込む C# コードがありますbyte。Node.js を使用して同じことを試してみたいと思います。C# コードのbyte[]配列には次の値があります。

Node.jsのserialportモジュールを使用してこれを達成する方法を教えてください。