ブログの説明
パソコンやアンドロイドなどの情報を収集しまとめているブログです。

記事内に張られている画像はクリックすると見やすいサイズの画像が表示されるようになっています。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
アクセスカウンター
検索フォーム
カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

エアガン弾速計作成その1:エアガン弾速計作成

エアガン用弾速計関連記事



エアガンの弾速を測ろうと製品を探してみたところ、思っていた以上に高価だったため、Arduinoやフォトトランジスタなどを使用して自作する事にしました。


パーツリスト

1kΩの抵抗
330Ωの抵抗
赤外線LED
フォトトランジスタ
計測管用樹脂パイプ
Arduino UNO


弾速計測管

弾速計測管は70mmの長さで作り、50mm間隔で穴をあけ、そこにフォトトランジスタ赤外線LEDを取り付けました。


回路

弾速計測管用の回路は以下のサイトのフォトリフレクターを参考に作成しました。
赤外線LEDとフォトトランジスタを向かい合わせに配置し、間を通過する物体を検出するようにしています。
赤外線LEDの電流制限抵抗に330Ωの抵抗を、フォトトランジスタのプルアップ抵抗に1kΩの抵抗を使用しました。


ソースコード

bool flontFlag = false;
bool rearFlag = false;

//時間格納変数(時間はマイクロ秒)
unsigned long timeFront = 0;
unsigned long timeRear = 0;

//ハードウェア仕様
#define BARREL_L 48.28//計測区間のバレルの長さ(ミリメートル)


void setup()
{
	Serial.begin(9600);
	attachInterrupt(0, front, RISING);
	attachInterrupt(1, rear, RISING);

}

void loop()
{
	unsigned long dTime = 0;//通過時間格納変数(マイクロ秒)
	double speed = 0;//(単位:m/s)

	if( flontFlag )
	{
		//Serial.println("Through front.");
		flontFlag = false;
	}
	if( rearFlag )
	{
		//Serial.println("Through rear.");
		dTime = timeRear - timeFront;

		//速度計算式
		//[m]/[s]
		//=[mm]/[ms]
		//=[mm]/([μs]/1000)

		speed = BARREL_L / ( (double)(dTime) / 1000.0 );

		Serial.print("Front: ");
		Serial.println(timeFront);
		Serial.print("Rear: ");
		Serial.println(timeRear);
		Serial.print("dTime: ");
		Serial.println(dTime);


		Serial.print("Speed: ");
		Serial.print(speed);
		Serial.println(" m/s");

		rearFlag = false;
	}


}


void front()
{
	flontFlag = true;
	timeFront = micros();
}
void rear()
{
	rearFlag = true;
	timeRear = micros();
}


動作画面

まだ、ユーザーインタフェースが無い為、動作はシリアル通信のみです。
右の動作画面は、マルイのエアーコッキングM1911と同社の次世代SOPMOD M4の弾速を計測した画像です。
次世代電動ガンは反動がある為、計測時にフォトトランジスタが抜けてしまい、変なデータが混じってますが大体ネットで出回っている通りの値が出ています。


今後の課題

今後以下の事をする予定です。
・アクリル板でケースを作成し、ケースを作成。
・Kosianを使い、AndroidとArduinoをBluetooth(SPP)で接続。
・Androidで集計用アプリを作成。


参考:http://www.mars.dti.ne.jp/~ogura/e_hobby/bbspeed.html

COMMENT

EDIT COMMENT

非公開コメント

最新トラックバック
ブロとも申請フォーム
QLOOKアクセス解析
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。