Topics
※大学の研究室ゼミで作った資料を使いまわしているため、サーバーを個人用に変更したとき、容量制限などの条件から、まだサンプルソースzipがupできていません。
随時、調整していきます。
※大学の研究室ゼミで作った資料を使いまわしているため、サーバーを個人用に変更したとき、容量制限などの条件から、まだサンプルソースzipがupできていません。
随時、調整していきます。
File > Examples > 1.Basics > Blink以下、調整中…
マイドキュメント └─Processing └─bounce_ball_sample ├─bounce_ball1 │ └─bounce_ball1.pde ├─bounce_ball2 │ └─bounce_ball2.pde ├─bounce_ball3 │ └─bounce_ball3.pde └─bounce_ball4 └─bounce_ball4.pde
画面上をボールがバウンドするプログラムです。
徐々に機能が追加されています。
次に、各ファイルの特徴を示します。
ここまでが目標。
他にも、重力や風の影響、反発係数の設定など、プラスの機能を各自で考えてみてください。
マイドキュメント ├─Arduino │ ├─serial_test │ │ └─serial_test.pde │ └─button_serial │ └─button_serial.pde │ └─Processing ├─serial_test │ └─serial_test.pde └─button_serial ├─button.pde ├─button_serial.pde ├─sketch.properties └─data └─MS-Gothic-48.vlw
Arduinoの動作 | 通信方向 | Processingの動作 |
---|---|---|
「0、1、2、…255」を繰り返し送信 | ―> | 受信値をx座標とする円(上段)を出力 |
D11ピンにPWM出力 | <― | 「0、2、4、…254」を繰り返し送信 受信値をx座標とする円(下段)を出力 |
※下段の円しか動かない場合、通信がうまくいっていません。
Processingのスケッチで、
myPort = new Serial(this,Serial.list()[2],9600);
の値を変えてみてください。
この値は、PCでアクティブなCOMポートの内、何個目を使用するかを指定するものです。
Arduinoの動作 | 通信方向 | Processingの動作 |
---|---|---|
D12ピンの状態を取得し、HIGHなら1、LOWなら2を送信 | ―> | 受信した値により、背景色を変更 |
受信した値+2番(D2~D6)のピンをHIGHにする ※D0,D1は、シリアル通信に使用中のため、使用不可 |
<― | 押されたボタン番号(0~4)を送信 |
※別途、「Button.pde」のButtonクラスにより、ボタン色を制御
※ユニバーサル基板については、「27×17 片面スルーホール基板」(4隅がネジ穴のため、3つずつ穴が減っている)を使用する予定です。
その他、抵抗、線材、ギヤボックス、タイヤ、ユニバーサルプレート等、基本的な部品に関しては、研究室に在庫があります。
マウスにボードがついて動きます。
また、クリックで初期化されます。
※接触判定は簡単にしか行なっていないので、ボールの縁でなく中心を基準に(半分めりこんで)バウンドしたり、ときどきボードにボールがハマります…
(作る人は是非、そんなことのない作品を作ってくださいね)
この操作を、Arduinoを用いたコントローラで行なうとして、シリアル通信で送るデータは、
などが考えられると思います。
各自、面白い方法を考えても楽しいかと思いますので、試行錯誤してみてください。
参考資料を、当サイトの「Appendix」に掲載したので、参考にしてください。