すべてのマシンの構築は「鉄」から始める必要があります。そのため、マシンに使用したものを簡単に説明します。
arduino nano
BluetoothモジュールHC-05
Z-MiniモーターセンサーシールドL293D
2WDモーターシャーシ
このプロジェクトでは、ハードウェア構成は大きな役割を果たさないため、シャーシ、シールド、およびArduino自体を任意のアナログに置き換えることができます。
それでは、Androidアプリケーションの作成に移りましょう。 App Inventor-Androidアプリケーション用のビジュアル開発環境は、ブラウザーから機能します。 サイトにアクセスして、Googleアカウントへのアクセスを許可し、[作成]ボタンをクリックして、新しいプロジェクトを作成します。 「ドラッグアンドドロップ」メソッドを使用する新しいプロジェクトでは、移動方向を選択するための4つのボタンと、Bluetoothモジュールに接続するためのボタンを作成します。 このようなもの:
次に、右上隅の[ブロック]ボタンをクリックし、同じドラッグアンドドロップ方法で、次のようなAndroidアプリケーションのロジックを作成します。
「ビルド」ボタンをクリックして、アプリケーションをコンパイルします。
arduinoの愛好家がスケッチを書くとは思いませんが、コンピューターがシリアルポートを介してコンピューターから制御される既製のスケッチから選択できるとだけ言います。 これを使った
スケッチ
int val;
int IN1 = 4;
int IN2 = 7;
int EN1 = 6;
int EN2 = 5;
ボイド設定()
{
Serial.begin(9600);
pinMode(IN1、OUTPUT);
pinMode(IN2、OUTPUT);
pinMode(EN1、出力);
pinMode(EN2、出力);
}
ボイドループ()
{
if(Serial.available())
{
val = Serial.read();
//前進する
if(val == 'W')// Wキーを押したとき
{
//出力はモーターシールドに従って構成されます
//モーターが前方に回転します
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、HIGH);
digitalWrite(IN2、HIGH);
}
//後方移動を設定します
if(val == 'S')
{
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、LOW);
digitalWrite(IN2、LOW);
}
//移動を右に設定
if(val == 'D')
{
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、HIGH);
digitalWrite(IN2、LOW);
}
//移動を左に設定
if(val == 'A')
{
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、LOW);
digitalWrite(IN2、HIGH);
}
//停止モード
//プログラムでキーを放すと、「T」がポートに送信されます
if(val == 'T')// Tキーを押すと
{
// ENABLEの結論はマイナスに引き出され、モーターは動作しません
digitalWrite(EN1、LOW);
digitalWrite(EN2、LOW);
}
}
}
int IN1 = 4;
int IN2 = 7;
int EN1 = 6;
int EN2 = 5;
ボイド設定()
{
Serial.begin(9600);
pinMode(IN1、OUTPUT);
pinMode(IN2、OUTPUT);
pinMode(EN1、出力);
pinMode(EN2、出力);
}
ボイドループ()
{
if(Serial.available())
{
val = Serial.read();
//前進する
if(val == 'W')// Wキーを押したとき
{
//出力はモーターシールドに従って構成されます
//モーターが前方に回転します
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、HIGH);
digitalWrite(IN2、HIGH);
}
//後方移動を設定します
if(val == 'S')
{
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、LOW);
digitalWrite(IN2、LOW);
}
//移動を右に設定
if(val == 'D')
{
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、HIGH);
digitalWrite(IN2、LOW);
}
//移動を左に設定
if(val == 'A')
{
digitalWrite(EN1、HIGH);
digitalWrite(EN2、HIGH);
digitalWrite(IN1、LOW);
digitalWrite(IN2、HIGH);
}
//停止モード
//プログラムでキーを放すと、「T」がポートに送信されます
if(val == 'T')// Tキーを押すと
{
// ENABLEの結論はマイナスに引き出され、モーターは動作しません
digitalWrite(EN1、LOW);
digitalWrite(EN2、LOW);
}
}
}
だから、ここに私のマシンがあります:
アプリケーションのデザインが好きな人は少し変更できます。 これを行う方法については詳しく説明しません。自分で理解することは難しくありません。 これには、基本的に、透明な背景をサポートしていない.jpegではなく.pngファイルを使用する必要があるとしか言えません。 たとえば、準備ができていない人は、30分または1時間でそのようなデザインを作成できます。
PS App Inventor 2でアプリケーション開発に遭遇しなかった人のために、このアプリケーションの開発に関する詳細なガイドを作成しました(表示するにはYouTubeにアクセスする必要があります)。
PPS ここでは初心者やプロ向けのarduinoに関する100以上の教材のコレクション。
オンラインArduino Gicktimeコースはこちらです。
UPD 02/02/2017: プレイマーケットにアプリケーションを投稿しました。
他のシールドを使用した同様のプロジェクトはこちら。