カテゴリー「Processing」の9件の記事

2009年12月 8日 (火)

赤外線リモコンの信号を出してみる - その2

今日も、昨日の記事の続きを・・・

赤外線リモコンの信号を見てみる - その2のProcessing側のプログラムを信号のビット列を取り出せるように変更。

Processingのスケッチ

実行画面

20091208_190712


取り出せたビット列を、今回作成したArduinoのプログラムに貼りつけて実行すれば、リモコンの代わりに信号を送ってくれる。
回路は昨日の記事のまま使える。

Arduinoのスケッチ

上のプログラムにあるビット列だと、TOSHIBAのテレビREGZAの電源をON/OFFできる。

あとはインタフェースを作って、自分だけのリモコンを作ってしまおう・・

| | コメント (3) | トラックバック (0)

2009年12月 6日 (日)

赤外線リモコンの信号を見てみる - その2

昨日の記事に続いて、赤外線リモコンの信号を見てみる。
今回はArduinoを使って、信号をMacに送り、Processingでグラフとして表示する。

以下の2つのブログ記事を参考にした。
Arduinoで学習リモコン - Okiraku Programming
Arduino-Processing シリアル通信3 - 建築発明工作ゼミ2008

ソースコード(汚い)
Arduinoスケッチ
Processingスケッチ

実行画面
20091206_185032

配線図
Irtest2

配線写真
Img_0029


これで、赤外線リモコンの通信内容を確認することができた。
次は、通信信号を保存して、赤外線LEDで送信できるようにする。

| | コメント (0) | トラックバック (0)

2009年9月27日 (日)

ボリューム(可変抵抗)を使ってSnakeGameを操作する

秋月のボリューム(可変抵抗)をArduinoに接続し、抵抗値を読み取り、値をシリアル通信することでSnakeGameを操作する。
使用したボリュームは「小型ボリューム10KΩB」
やっていることはロータリエンコーダを使ってブロック崩しを操作と同じ。

Arduino側のプログラム

Processing側のプログラム

↓は、また無理矢理撮影したムービー


前回のロータリエンコーダと違って、回転の方向を検出する必要はなく、A/D変換の値をシリアル通信するだけなので、Arduino側のプログラムはとてもシンプル。
Proccesing側も読み取った値をヘビの回転半径に適用しているだけとなっている。

実際に操作してみると、とても難しい、、、
ぜひパーツをそろえてプレイしてみてください(笑)

| | コメント (0) | トラックバック (0)

2009年9月24日 (木)

SnakeGameを更新(障害物を追加)

ここから遊ぶことができます。(要JAVA)

今回はエサ?を追加した時と同じ方法で障害物を追加してみた。
障害物の数が増えると、エサ?を取るのは無謀になってくる・・・

Photo

| | コメント (0) | トラックバック (0)

2009年9月19日 (土)

ProcessingでSnake Gameを開発中

Processingでまじめにゲームを書いてみたくなったので、Snake Gameを開発中。

ここから遊ぶことができます。(要Java)


20090919_10436

操作はマウスの左クリックと右クリックを使うだけ!
まだまだ開発途中なので単純な要素しか無いです、、

20090919_10945

Processingのソースコードも一緒にアップロードされているので、見苦しいコードですが何かの参考になればうれしいです。

| | コメント (0) | トラックバック (0)

2009年9月15日 (火)

Processingのアプレットを上げてみる(ブロック崩し)

Processing でのプログラミングでは、全ての定義されたクラスは Java の内部クラスのコードとして扱われ、コンパイルされる。(Wikipedia

という訳で、「File」→「Export」でJavaアプレットが出力されます。

20090915_151702

出力されるファイルは↓
20090915_153034

後は必要なファイルをアップロード
ここから見ることができます。

↑のが三日前に作ったブロック崩しだけど、読み込みが終わるとすぐ始まるので、すぐにアプレットクリックしてアクティブにする必要が、、あと当たり判定は相当ずれてる。
やり直す時はブラウザの更新で!

| | コメント (0) | トラックバック (0)

2009年9月13日 (日)

ロータリエンコーダを使ってブロック崩しを操作

昨日作ったProcessingのブロック崩しをマウスを使わず、秋月で購入したロータリエンコーダで操作できるようにする。
ロータリエンコーダの動きをArduino経由でPCとシリアル通信する。

Arduinoのプログラム

Processingのプログラム

Img_0002

動画を撮る手段がMacBookしか無いので無理矢理な動画を、、、
QuickTimeでムービー収録しつつ画面収録するという荒技を使ってみた。

Processinのプログラムはシリアル通信部分を追加し、受信したデータを使ったバーの操作に変更した。
Arduinoのプログラムはロータリエンコーダの回転方向を区別するために、見づらいものになっている。

Arduinoとのシリアル通信はProcessingを使っていると特に難しい処理を書く必要がないので非常に解りやすい。

|

2009年9月12日 (土)

Proseccingでブロック崩しをつくる

Processingの リファレンス を眺めながらブロック崩しを作ってみた。
↓はただの画像です。

Block_2

ソースコード

当たり判定とかその後の動きはすごく適当に、、、
画面に描画するために意味不明なコードを書かなくていいので、あっさりと完成させることができた。

もっときれいな画面を作れるようになりたい。

| | コメント (0) | トラックバック (0)

2009年9月11日 (金)

Processingをさわってみる

まずは Wikipedia から Processing
Arduinoとシリアル通信を行うPC側のアプリを開発するために勉強する。

Macへのインストールはまず、
http://processing.org/download/ から「processing-1.0.X.dmg」をダウンロード
dmgファイルをマウントし「Processing」を「アプリケーション」フォルダに移動する

「アプリケーション」フォルダから「Processing」を開くことで統合開発環境 (IDE)が表れる。

20090911_225452


ここではまずWikipediaに載っているHello Worldのプログラムを動かしてみる。
まずは、プログラムをコピー&ペーストし実行してみる、、、
が、エラー発生
(プログラムの実行はウィンドウ左上の右三角ボタン)

20090911_230233

日本語リファレンスから http://pripro.org/p5ref/index.html から
loadfont() について調べてみると「Processingで使うフォントを作るには、Toolsメニューから"Create Font..."を選択してください。」とあるので、フォントファイルを作成する。

20090911_230754

後は、プログラムのフォントファイル名の部分を変更し実行 → 無事実行された。

20090911_231044

「Hello World」が途中で切れてるけど、、、
とりあえずここまで。

| | コメント (0) | トラックバック (0)

その他のカテゴリー

Arduino | Flash | git | iPhone | Mac | Processing | PS3 | Python | その他 | 工作