Pc Steuerung

Hey liebe Forum-Nutzer,

mir ist in den Sinn gekommen mal etwas mit Elektronik zusammen mit den Pc zu entdecken.

Meine erste Idee eine Benutzeroberfläsche erstellen auf den PC inden man bequem Ausgänge schalten kann und gleichzeitig ein Temperaturfühler im Auge behält.

Meine Frage wäre kennt jemand tolle Internetseiten wo man sich reinfummeln kann.
Gibt es eine einfachere Lösung als Visiual Basic für die Benutzeroberfläsche?

mfg

Hi piaggi,
was gibt es einfacheres als Visual Basic?

Erstell einfach einen Button für jeden Port und lass sie beim anklicken rot bzw. grün werden.
Dann sende mit über einen seriellen Port ein Zeichen, dass du vom Arduino interpretieren lässt.

Für den Temperaturfühler kannst du eine Anfrage an den Arduino schicken und dann auf ein Ergebnis warten.
In vb.net kann das so aussehen:

Private WithEvents serial As New IO.Ports.SerialPort()
Private WithEvents TempTimer as New Timer

Private Sub From1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        TempTimer.Interval = 1000 'jede Sekunde
        Dim Buttons() as Button = {Button1, Button2, ...}
        For Each Button as Button in Buttons
               Button.BackColor = Color.red
               AddHandler Button.Click(), AdressOf Button_Click
        Next
        serial.PortName = "COM13" 'oder Anderer
        serial.BaudRate = 9600 'oder halt andere
        serial.DataBits = 8
        serial.StopBits = IO.Ports.StopBits.One
        serial.Parity = IO.Ports.Parity.None
        serial.open()
        temptimer.start
End Sub

Private Sub Temptimer_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Temptimer.Tick
        serial.write("t") 'für Temp
        Dim _bytes(4) as Byte //Beispiel 4 Bytes für die Temperaturangabe
        Serial.read(_bytes, 0, 4)
        lblTemp.text = _bytes.ToString()
End Sub

Private Sub Button_Click(Byval sender as Button, e as SystemEventArgs) 
  if sender.BackColor = Color.green then
    sender.Backcolor = Color.red
  else
    sender.BackColor = Color.green
  end
  Serial.write(sender.Text)
End Sub

Auf dem Arduino wartest du bis ein Zeichen reinkommt, das die Zahl des Pins darstellt und machst halt dann an oder aus.
Schreibe auf jeden Button die Pinnummer als Text. Dann Erstellst du noch ein Label für die Temperatur.
Auf dem Arduino wartest du auf das "t" und schickst dann die Daten über Serial.

Der Code oben ist nur aus dem Kopf geschrieben. Ich garantiere für nichts :wink:

//Edit Nr 2

hat zwar weniger mit selber programmieren zu tun, vielleicht hilft es dir oder jemand anderem trotzdem. Die Software kann glaube ich auch verändert werden.

mit dieser Software kannst du auch per Grafischer Oberfläche die Ausgänge schalten.
http://firmata.org/wiki/Main_Page

in der Arduino IDE 0022 mit dem Uno folgenden Sketch öffnen und auf das Board hochladen: (mit dem Uno erscheinen nur mit diesem Sketch Buttons in Firmata)

File -> Examples -> Firmata -> StandardFirmata_2_2_forUNO_0_3

Danach die Firmata.exe als Admin ausführen und den richtigen Com Port auswählen.
Anschließend kann in der Software per Mausklick High \ Low \ PMW eingestellt werden.

siehe:

Gruß

Das hat aber den Nachteil, dass die Werte nicht nachbearbeitet werden können.
die Temperatur lässt sich dann nur als analoger Wert von 0 bis 1023 anzeigen

hab ich ja auch nicht behauptet XD

Gruß

Hätte denn jemand Interesse mir ein Programm zu schreiben gegen Bezahlung ?

MfG

ich würde mich anbieten :slight_smile:
einfach PN an mich