ユーザー登録JavaScriptを使用したロボットのプログラミング39JavaScriptでのプログラミングの時間の大半を費やしている誰かとして、私の現在の言語フォーカスからあまり逸脱することなく、小ロボットに参入するための最良のルートは何ですか?私のような開発者にとってフィールドをより親しみやすいものにする可能性のあるJavaScript言語を使用するプロジェクトキットまたはツールはありますか?すべてのコードがシミュレーションで実行される仮想環境にも興味があります。これは、Arduinoに使用されるプロトコルの純粋なJs実装について説明しています。クリスグティエレスロボットで実行されているnodejs実装をいくつか見たいです。WebSocketを使用してWeb上でロボットを制御するだけの場合もあります。JavaScriptではプログラミングしません-スクリプトを記述します(ブラウザでDOMを操作するために使用されます)JAVAでプログラミングできます-これはまったく異なります。node.jsJavaScriptでもありません。これは、AJAX呼び出しをミニサーバーとして解釈し、ebayなどの大量のリクエストに使用されるCライブラリです。javascriptはノードを使用して入札価格と入札時間を同期するため、終了するアイテムのページを更新する必要はありません。ピョートル・クラしたがって、cnode.jsを使用してボットをプログラミングし、インターフェイスします。ajaxを本質的に使用しますが、サーバーリクエストまたはJavaScriptとは関係のない他の巧妙なコードを使用することもできます。javascript実行エンジンに結合するプロジェクトがいくつかあります。Reflectaリモートコントロールプロトコル用のNode.jsインターフェイスであるnode-reflecta上のライブラリであるJohnny-Fiveを見てください。私は、RocketBotと呼ばれるNode.js制御のロボットを個人的に構築しました。これは、BeagleboneとArduinoの上にnode-reflectaとnode-joystickを組み合わせて、このアプローチがうまく機能することを証明します。ジェイ・ビーバーズソース12うーん、興味深い質問です!個人的には、Arduinoプラットフォームをご覧になることをお勧めします。Cでプログラムされているので、構文はJavaScriptの作成者にはおなじみになります。thanブロックなど)がどのようにレイアウトされているかを知ることは戦いの70%であり、それに慣れたらプラグアンドプレイできます。SparkFun.comまたはadafruit.comの優秀な人からオンラインで約30ドルのスターターキットを手に入れることができ、PC、Mac、またはLinuxマシンでプログラムできます。JavaScriptコードをそこにドロップして途中に行くと言っているわけではありませんが、Arduinoを使い始めたときはJavaScriptプログラマーでしたので、簡単に見つけて実行できます。がんばろう、PS-電子回路(ライト、モーターなど)の構築にも慣れている必要がありますが、経験がなければ、その価値のあるArduino導入キットを使用して開始できます。クリス1素晴らしい答え、@クリス。他のJavaScript開発者からArduinoプラットフォームについて聞いたことがあります。それは夢中になりたい開発者にとって最高のゲートウェイ薬です。Web開発者として、あなたの質問は非常に興味深いと思います。前に述べたように、node.jsおよび他のさまざまなバージョン用のプラットフォームがありますが、JavaScriptに本当に慣れている場合は、他の言語を簡単に習得できます。これを強くお勧めします。基本的なコンピューターサイエンスを理解する能力が高まるだけでなく、新しいことをより簡単に学ぶことができます。System(ROS)は、Javascriptを使用してロボットを制御する機能を提供します。rosbridgeをご覧ください。次に、rosserialを使用して、ロボットを制御するマイクロコントローラーとインターフェイスする必要があります。私がROSの大ファンである間、これはロボット工学IMHOの分野を探検し始める非常に複雑な方法です。Arduinoを手に取り、Cを少し学ぶことで、より良いサービスが得られます。Arduinoは、プロセスを単純化する素晴らしい仕事をしており、Cは構文の観点からJSから大きく逸脱していません。DaemonMakerソース5一般に、RPi用のこのように、プラットフォームでnode.jsを使用する多くの方法があります。あなたがそれらを検索するだけなら、もっと似たようなものがあります。1つの興味深いものはArduGateです。これにより、WebページがJSを介してarduinoと通信できるようになります(ただし、arduinoにコンパイルおよびロードされないため、おそらく正確には望んでいません)別の言語を使用することの何が問題なのかは本当にわかりませんが。++でArduinoをプログラミングするのに非常に快適です(CとJavaも可能です。仕事をすれば、かなり多くの言語が使えます)。覚えておいてください、ロボットをプログラミングするのに派手なものは必要ありません-通常ifのs、fors、whiles、switches、そして時々class。Javaが強く型付けされていることです(ただし、RPiを使用している場合、Pythonは弱い型付けですが、100万以上の方法でうるさいです)すべてのタイプを指定する必要がある場合、最初は少しフラストレーションが生じる場合があります。ネイティブ言語を使用する利点の1つは、ネット上でAPIやサンプルコードを見つけるのがはるかに簡単になることです。ArduGate(組み込まれており、おそらくあなたが望んでいるものではない)を除いて、EEPROMにアクセスする方法はありません。これは一般的なタスクです。単純なプログラムに固執したいのでなければ、母国語を使用する方が良いでしょう。マニシュアースソース2私の友人は実際にWifi経由でNodeJSで制御される非常に強力な戦車ロボットを持っています。ロボット自体は150ポンドという厳密な「小型ロボット」ではありませんが、おそらくソースコードからかなり多くを学ぶことができます。オンボードでウェブサーバーを実行し、Arduinoと通信するネットブックがあります。プロジェクトページでソースコードを見つけることができます。別のコンピューター上のWebブラウザーからのリアルタイム制御は、驚くほど反応が良いです。Roboticsは、分散ソフトウェアサービスプロトコル(DSSP)と呼ばれるプロトコルを使用し、誰でも任意の言語で実装できるライセンスの下で仕様をリリースしました。DSSPプロトコルは現在のWeb標準と完全に互換性があり、JavaScriptとNodeJSで実装することは素晴らしいアイデアだと思います。これにより、ノードアプリケーションが、現在利用可能なDSSロボットサービスとやり取りできるようになります。2.0をプログラミングするのはとても楽しいです。node-ar-droneライブラリを使用して、ドローンの離陸、移動、フリップ、着陸の例を次に示します。Roboticsは、javascriptがロボット工学にもたらす利点、特に現実世界のオブジェクトとアクションをチェーン可能なイベントプロセスとしてモデル化できる自然な方法について語っています。ドローンをアニメーション化する上記のサンプルコードは、jQueryを使用してHTML要素をアニメーション化するのと非常によく似ています。ジョン・ワイズマンソース回答を編集して、より具体的にし、コンテキストを追加しました。フィードバックをお寄せいただきありがとうございます。ジョンワイズマンジョンに感謝します。これは素晴らしい編集であり、未来を保証する答えになるようなものです。マークブース0Espruinoと呼ばれるプロジェクトもあります。これは、低電力ARMマイクロコントローラー用のJavaScriptインタープリターです。++インタープリターであるtiny-jsプロジェクトの書き直しです。ロブズソース0JavaScriptベースのロボティクスコミュニティはこの質問が尋ねられて以来急速に成長しているため、JavaScriptベースのロボティクスプロジェクトをオンラインで検索すると役立つ場合があります。//burningservos.comの背後にいるブロガーは、4本足のロボットをゼロから構築するプロセスを文書化し、ブロガーが評価または使用した複数のライブラリjavascriptについて議論しました。チ(またはAdafruitやHackster.ioにも)に「ハードウェア」セクションがあり、人々が使用したライブラリをチェックアウトできるJavaScriptベースのハードウェアハッキングプロジェクトを共有しています。マイケル・ジェユン・チョンソース弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。