• IT-Karriere:
  • Services:

Das Programm testen

Die Basisfunktionen habe ich jetzt, nun kommt der spaßige Teil: das Testen. Dazu baue ich die Steuerung aus meinem PC aus und schließe einen Lüfter an. Dank der USB-Buchse an der Steuerung kann ich sie auch an einen normalen USB-Port anschließen.

Stellenmarkt
  1. msg DAVID GmbH, Braunschweig
  2. Bank of Scotland, Berlin Mitte

In der Klasse MySerialPortProcess finde ich die benötigte Baud-Rate: 4800. Das ist recht niedrig. Bisher bin ich davon ausgegangen, dass diese Klasse auch eine Prüfsumme generiert. Eine solche Funktion ist aber nicht vorhanden. Eine Prüfsumme wird weder übermittelt noch geprüft.

Als Erstes versuche ich, die Drehzahl auszulesen. Ich sende die Anfrage und bekomme ungefähr eine halbe Sekunde später fünf Bytes als Antwort. Mit der oben deklarierten Funktion get_rpm_response() wird mir die korrekte Drehzahl ausgegeben. Perfekt!

Fehler suchen

Beim Setzen der Spannung habe ich weniger Glück. Nachdem ich den Ausgang unter Windows auf 0 Prozent gesetzt habe, ist es mir nicht möglich, die Spannung unter Linux zu setzen. Egal wie oft ich die Spannung auf 12,4 Volt (Maximalwert im Quellcode) setze, der Lüfter dreht sich nicht.

Golem Akademie
  1. Python kompakt - Einführung für Softwareentwickler
    19./20. April 2021, online
  2. Ansible Fundamentals: Systemdeployment & -management
    26.-30. April 2021, online
Weitere IT-Trainings

Nach jedem Befehl kommt ein einziges Byte als Antwort. Es scheint also einen Rückgabewert zu geben. Ich finde nach einigem Testen heraus: 0x01 stellt eine gelungene Operation dar, 0x02 einen Fehler. Tritt ein Fehler auf, muss ich meine Lüftersteuerung zuerst von der Stromquelle trennen, um fortzufahren.

Ich versuche, andere Werte für die Spannung zu setzen, beginnend mit 10 Volt. Siehe da: Der Lüfter läuft an. Die 12,4 Volt scheinen hingegen nicht zu funktionieren. Ich setze den Ausgang auf 0 Volt und schaue, wann er reagiert. Beginnend bei 12,4 Volt zähle ich in 0,1 Volt Schritten abwärts. Bei 12V dreht der Lüfter!

Software in Linux integrieren

Die beiden grundlegenden Funktionen stehen. Unter Windows kann man noch den aktuellen Strombedarf auslesen - das stelle ich erst einmal hintenan. Die Standard-Schnittstelle für Sensoren unter Linux sind die hwmon-Kernelmodule. Für einen Raspberry Pi habe ich bereits ein solches Kernelmodul für einen I2C-Temperatur-Sensor geschrieben. Dasselbe habe ich für meine Lüftersteuerung vor.

Nach langer Recherche komme ich zu dem Schluss, dass mir aktuell das nötige Know-how fehlt, um das Kernelmodul zu entwickeln. Das Problem liegt hier beim USB-zu-seriell-Konverter. Ich müsste das bereits bestehende Kernelmodul für die Kommunikation nutzen, finde aber keinerlei Dokumentation, ob dies überhaupt möglich ist. Weder in der Linux-Dokumentation noch bei Stackoverflow finde ich passende Informationen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Microsoft hilft mitEine Alternative zum Kernelmodul entsteht 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7.  


Anzeige
Hardware-Angebote

lespocky 04. Apr 2017

Der scheinbar komische Wert 192, der fest mitgegeben werden muss, ist vermutlich ein Byte...

captain_spaulding 27. Mär 2017

Da dieses Teil einen ganz normalen Serial Port benutzt, macht zumindest dieser Teil keine...

aha47 26. Mär 2017

Welche jetzt konkret? Stimmt, leider sind die "meisten Linux User" offenbar aus der...

scheuerseife 25. Mär 2017

Eine Alternative Java Software für das NZXT Grid+ Hat RoelGo schon 2016 unter der MIT...

1ras 24. Mär 2017

Ja, kenne ich. Von den USB nach RS-232 Wandlern gibt es leider ziemlich viele...


Folgen Sie uns
       


Govecs Elmoto Loop - Test

Das Elmoto Loop von Govecs wiegt nur 59 Kilogramm, hat einen guten Elektromotor und fährt sich ganz anders als ein klassischer E-Roller.

Govecs Elmoto Loop - Test Video aufrufen
Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme

      •  /