Eigen Android-app voor Arduino-besturing maken met MIT App Inventor
Overzicht
Met MIT App Inventor (online, gratis, Gmail-account vereist) bouw je visueel Android-apps voor Arduino-bluetoothbesturing. Twee voorbeelden: LED-besturing en stappenmotor-besturing met grafische interface.
Arduino-code (voorbeeld 1: LED)
Ontvangt '0' of '1' via Serial (38400 baud), schakelt LED, stuurt "LED: OFF/ON" terug als bevestiging.
#define ledPin 7
int state = 0;
void setup() { pinMode(ledPin, OUTPUT); digitalWrite(ledPin, LOW); Serial.begin(38400); }
void loop() {
if (Serial.available()) state = Serial.read();
if (state == '0') { digitalWrite(ledPin, LOW); Serial.println("LED: OFF"); state = 0; }
else if (state == '1') { digitalWrite(ledPin, HIGH); Serial.println("LED: ON"); state = 0; }
}
MIT App Inventor: Designer
Componenten:
HorizontalArrangementvoor layoutListPicker(met afbeelding) voor Bluetooth-apparaat selectieLabel"Not Connected" / "LED: OFF" voor statusButton"Turn On" & "Turn Off"BluetoothClient(onzichtbaar)Clockvoor realtime verbindingsstatus
Smartphone koppelen via MIT AI2 Companion app (QR-code scannen) voor live testen.
Blocks Editor: Programma-logica
- ListPicker.BeforePicking: Set Elements → BluetoothClient.AddressesAndNames (getapte apparaten)
- ListPicker.AfterPicking: Call BluetoothClient.Connect (Selection) → verbindt met geselecteerde module
- Clock.Timer: Update "Connected" label text op basis van BluetoothClient.IsConnected
- TurnOn_Button.Click: BluetoothClient.Send1ByteNumber(49) → ASCII '1' → ReceiveText → set LED_Status label
- TurnOff_Button.Click: Send1ByteNumber(48) → ASCII '0' → ReceiveText → set label
App downloaden via Build-menu (APK of QR-code).
Voorbeeld 2: Stappenmotor besturing met grafische interface
Extra componenten: Canvas met twee ImageSprites (vast gauge, draaiende wijzer), CheckBox (Auto/Manual), Button (Reverse), Slider (snelheid).
Blokken:
- Canvas.Touched → ImageSprite.PointInDirection → heading naar label & versturen als Text via Bluetooth
- CheckBox.Changed → "Auto" of "Manual" versturen
- Reverse_Button.Click → "Reverse" versturen
- Slider.PositionChanged → waarde versturen als snelheid
Arduino-code verwerkt ontvangen strings: "Auto" → continue draaien, "Reverse" → richting omkeren, numerieke waarde → snelheid/positie. In Manual-modus: heading-waarde → absolute positie stappenmotor.
Downloadbare bestanden
BluetoothTest.aia(5,16 KB) – LED-app projectStepperMotorTest.aia(60,96 KB) – Stappenmotor-app project- Gauge & Pointer afbeeldingen (27,34 KB)
Met deze basis kun je elke Arduino-functie besturen via een gepersonaliseerde smartphone-interface.
Productieproces
- Een Ballistisch Parachute-herstelsysteem Ontwerpen voor UAV's
- Bouw een indrukwekkend monitor Ambilight-systeem met Arduino
- Universele Android-afstandsbediening bouwen met Arduino, 1Sheeld en IR-besturing
- Een slimme voltmeter bouwen met Arduino en smartphone – Eenvoudig DIY-project
- Nauwkeurige staalschatting: Stapsgewijze gids voor uw project
- Waarom straalbehandeling aangepaste metaalfabricatieprojecten verbetert
- Uw custom bewerkingsproject voorbereiden voor een concurrerende offerte
- 7 Stappen Om Een Succesvolle Automatiseringsroadmap Te Bouwen
- De Juiste Legering Kiezen: Magnesium vs. Aluminium voor Custom Gietprojecten
- De ideale kraan selecteren voor uw bouwproject: Een praktische gids
- Het juiste materiaal kiezen voor je project: Een praktische gids