Externe zugrif auf Arduino

Hallo miteinander,

ich würde mir gerne ein Kleines Programm schreiben unter FreeBasic mit dem ich mein Arduino Steuern kann.

Ich benutze das Arduino Mega und habe mir hier einen Bausatz zusammen gebaut mit dem ich bis zu 3 Magnetventile Öffnen / Schließen kann und einen Blitzauslöser noch bedienen kann.

ich möchte Tropfenbilder erstellen.

über meine Software möchte ich angeben können welches Ventil in welcher reihenfolge wie lange Offen ist und in welchen abständen sie schalten sollen natürlich möchte ich auch den Blitzauslöser einstellen können.

Wie ich das Programm in Freebasic Schreibe das ist mir klar, die Frage ist nur wie muss ich den Code vorbereiten für das Arduino? also was muss ich an das Arduino senden? oder auch nicht?

gibt es da eine art APT dazu? oder wie macht man so was?

Wie würdet Ihr hier vorgehen?

Muecke:
Wie würdet Ihr hier vorgehen?

Um eine handvoll Konfigurationsdaten vom PC in den Arduino zu übertragen, brauchst Du kein eigenes Programm schreiben. Es reicht dafür der "Serielle Monitor" oder ein beliebiges "Serielles Terminalprogramm",

Das Vorgehen dafür ist: Du denkst Dir ein "Übertragungsprotokoll" für die serielle Schnittstelle aus, mit dem Du die Konfigurationsdaten überträgst. Zum Beispiel denkst Du Dir Befehle nach diesem Schema aus:

v1, 2000, 300
v2, 2200, 50
v3, 2220, 170
k, 2350
start

Mit der Bedeutung:
v1, 2000, 300 ==> Ventil1 soll nach 2000 ms für 300 ms öffnen
v2, 2200, 50 ==> Ventil 2 soll nach 2200 ms für 50 ms öffnen
v3, 2220, 170 ==> Ventil 3 soll nach 2220 ms für 170 ms öffnen
k, 2350 ==> die Kamera soll nach 2350 ms auslösen
start ==> Schaltsequenz starten (jetzt geht's los und die Zeit zählt)

So dass Du zeilenweise die Parameter neu setzen kannst. Oder einfach mit "start" die Schaltsequenz starten kannst.

Dazu würde nur der serielle Monitor benötigt und auf dem Arduino brauchst Du nur eine Auswerteroutine für die serielle Schnittstelle, mit der die Befehle empfangen werden, aufgrund derer dann Variablen im Programm geändert werden bzw. der Ablauf gestartet wird.

Ein Grundgerüst für die reine Ablaufsteuerung habe ich hier erst vor wenigen Tagen als Code gepostet:
http://forum.arduino.cc/index.php?topic=211536.msg1552201#msg1552201
Bei diesem Programm - so wie ich es gepostet habe - werden die Variablen im Quelltext festgelegt und zusammen mit dem Programm hochgeladen.

Um nun nicht ständig geänderte Programme hochladen zu müssen, brauchst Du eigentlich nur noch den Code für den Empfang serieller Befehle zum Ändern der Hardware-Variablen dazuschreiben und dann kannst Du alles mit dem "Seriellen Monitor" über kurze Befehlseingaben steuern, ohne ein zusätzliches PC-Programm für die Änderung der Steuerzeiten zu benötigen.