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. Anwendungsbetreuerin / Anwendungsbetreuer (m/w/d) Direktion Bonn Hauptabteilung IT
    Berufsgenossenschaft Handel und Warenlogistik, Bonn
  2. Service Engineer (Incident- & Problemmanager) - Specialist (m/w/d)
    Vodafone GmbH, Eschborn, Unterföhring, Stuttgart, Düsseldorf
Detailsuche

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. ITIL 4® Foundation: virtueller Zwei-Tage-Workshop
    16.–17. Dezember 2021, virtuell
  2. Hands-on C# Programmierung: virtueller Zwei-Tage-Workshop
    1.–2. Dezember 2021, virtuell
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.  


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...



Aktuell auf der Startseite von Golem.de
Fälschung
Wieder Abmahnungen wegen Youporn-Streaming

Diesmal hat sich ein besonders dummer Betrüger an Abmahnungen zum Streaming bei Youporn versucht. In dem Brief stimmt fast keine Angabe.

Fälschung: Wieder Abmahnungen wegen Youporn-Streaming
Artikel
  1. Deutsche Telekom: Netflix, Facebook und Amazon sollen für Netzausbau zahlen
    Deutsche Telekom
    Netflix, Facebook und Amazon sollen für Netzausbau zahlen

    Deutsche Telekom, Vodafone und 11 weitere große europäische Netzbetreiber wollen jetzt Geld von den Content-Konzernen aus den USA sehen.

  2. Telekom-Internet-Booster: Feldtest bringt über 600 statt 50 MBit/s ins Haus
    Telekom-Internet-Booster
    Feldtest bringt über 600 statt 50 MBit/s ins Haus

    Die Telekom beginnt mit 5G DSL. Dafür wird im Haushalt eine Außenantenne benötigt.

  3. 800 MHz: Bundesnetzagentur dürfte nächste Auktion absagen
    800 MHz
    Bundesnetzagentur dürfte nächste Auktion absagen

    1&1 wird sich das neue Vorgehen nicht gefallen lassen. 800 MHz bietet wichtige Flächenfrequenzen auf dem Lande.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Heute ist Cyber Monday • AMD Ryzen 7 5800X 348€ • 3 für 2: Star Wars & Marvel • Bis 300€ Direktabzug auf TVs, Laptops uvm. • Bis 50% auf beyerdynamic + Gratis-Kopfhörer • Cyber Monday bei MM/Saturn (u. a. Xiaomi 11 Lite 5G 299€) • Alternate (u. a. be quiet CPU-Kühler 29,99€) [Werbung]
    •  /