Home‎ > ‎C-Control‎ > ‎

C-control und Handy

Inhalt:

·        Einfache Schaltvorgänge

·        Kommunikation über die serielle Schnittstelle

1.      Zusammenwirken von C-Control und Handys ohne eingebautem Modem

2.     Zusammenwirken von C-Control und Handys mittels SMS (Kurznachrichten)

3.     Zusammenwirken von C-Control und Handys mittels Modem

4.     Siemens S45

 

Der C-Control Steuercomputer eignet sich vorzüglich für die automatisierte Abwicklung von Mess-, Steuer- und Regelaufgaben. Da es sich dabei häufig um „stand-alone“ Anwendungen handelt, die sich unter Umständen in großer Entfernung befinden (z.B. Heizung im Ferienhaus, Wetterstation im Gebirge), bietet sich eine Fernkontrolle mittels dem Einsatz von Handys an. Grundsätzlich sind verschiedene Stufen des Zusammenwirkens von Handy und C-Control vorstellbar, vom Durchführen eines einfachen Schaltvorgangs bis hin zu komplexeren Steueraufgaben und zur Übertragung von größeren Datenmengen. Im Folgenden sollen einige der verschiedenen Möglichkeiten aufgezeigt werden. Die Ausführungen beziehen sich dabei vorwiegend auf den Einsatz der M-Unit.

 

Einfache Schaltvorgänge:

Die einfachste Möglichkeit, mittels eines Handys aus der Entfernung Ereignisse auszulösen besteht darin, an einem Digital-Port oder an einem AD-Eingang der C-Control den Spannungszustand an einem der Bauteile des Handys, welche bei Eingang eines Anrufes aktiviert werden, zu überwachen. Dazu eignen sich z.B. die LEDs der Tastatur des Handys, welche ja bei einem eingehenden Anruf eingeschalten werden. Die C-Control erkennt so den Eingang des Anrufs und führt die programmierte Aktion durch (z.B. Einschalten der Heizung). Der große Nachteil bei dieser Methode ist, dass man keinerlei Kontrolle darüber hat, ob die Sache dann auch wirklich geklappt hat. Der Vorteil wiederum ist, dass sich praktisch jedes ausrangierte und noch einigermaßen funktionstüchtige Handy dafür verwenden lässt.

 

Kommunikation über die serielle Schnittstelle:

Als wesentlich elegantere Lösung bietet sich die Kommunikation zwischen C-Control und Handy über die serielle Schnittstelle an. Hierbei ist natürlich Voraussetzung, dass das Handy über eine geeignete Schnittstelle verfügt. Es gibt verschiedene Handys mit serieller Schnittstelle, die sich aber in ihrer Funktionalität stark unterscheiden können. Im Folgenden einige konkrete Beispiele dazu.

 

 

Zusammenwirken von C-Control und Handys ohne eingebautem Modem, die einige wenige AT-Befehle beherrschen.

(hier am Beispiel des Ericsson GA628)

 

Beim Ericsson GA628 handelt es sich um ein eher betagtes Handy-Modell, das sich für wenige Euros im Internet ersteigern lässt. Es verfügt über eine serielle Schnittstelle und versteht eine wenngleich auch recht eingeschränkte Anzahl von  AT-Befehlen. Vorteilhaft bei diesem Handy ist (neben den geringen Anschaffungskosten), dass die serielle Schnittstelle mit der gleichen Übertragungsgeschwindigkeit (9600 bps) und den gleichen Pegeln arbeitet wie die M-Unit, d.h. mit den logischen Pegeln 5V und 0V.  Man kann also RXD und TXD der beiden Schnittstellen direkt (und natürlich überkreuzt) verbinden, ohne sich irgendwelche Adapterkabel beschaffen zu müssen. Falls man mit der Main-Unit arbeitet, die ja mit einem RS-232 Treiber bestückt ist, braucht es natürlich wiederum eine kleine Adapterschaltung (identisch mit dem Programmieradapter der M-Unit), da die RS-232 Schnittstelle mit den logischen Pegeln +12V und –12V arbeitet, und die Pegel im Vergleich zu jenen der M-Unit noch dazu invertiert werden. 

 

 

Serielle Verbindung von Ericsson GA628 und M-Unit

  

Wie läuft die Kommunikation ab?

Wenn am Handy ein Anruf eingeht, gibt dieses bei jedem Läuten über die serielle Schnittstelle den Text „RING“ aus. Man kann also die M-Unit dahingehend programmieren, die Schnittstelle zu überwachen und bei Eintreffen eines der vier Buchstaben des „RING“ den Anruf zu erkennen. Das R sollte man besser ausschließen, da das Handy auch einen „ERROR“ ausgeben kann. Da das GA628 über kein eingebautes Modem verfügt und auch keine SMS-Funktionen über die serielle Schnittstelle gesteuert werden können, lassen sich auf direktem Wege keine Daten oder Steuersignale übertragen. Dennoch ist es möglich, etwas differenzierte Steueraufgaben ausführen, indem man die M-Unit dazu veranlasst, die „RING“s mitzuzählen und dann je nach deren Anzahl eine im Programm vorgesehene Aktion durchzuführen. Das könnte dann in etwa folgendermaßen aussehen: 3x Läuten Þ Heizung ein, 6x Läuten Þ Heizung aus. In diesem Falle ist auch eine Art Feedback möglich, die C-Control kann nämlich über einen entsprechenden Befehl das angeschlossene GA628 dazu veranlassen, eine gewünschte Nummer anzuwählen. Der entsprechende Befehl heißt „ATDnummer;“, die Programmzeile zum Anwählen der Nummer 555333111 müsste dann lauten: print "ATD555333111;". Der Strichpunkt gehört dazu. Man kann sich hiermit also über durchgeführte Aktionen auch eine Bestätigung schicken lassen, z.B. nach dem Einschalten der Heizung kann die C-Control ein Rückruf mit 3x Läuten in die Wege leiten (das GA628 liefert auch bei einem abgehenden Anruf  das „RING“ über die serielle Schnittstelle). Das Abschalten der Heizung könnte dann beispielsweise mit einem etwas längeren Läuten quittiert werden. Der aufmerksame Leser dürfte schon verstanden haben, dass diese Anwendung ohne jegliche Kosten zu Buche schlägt, alleiniges Läuten kostet ja bekanntlich nichts.

Das GA628 beherrscht zwei weitere nützliche Befehle:

  • ATA: den Anruf beantworten, also sozusagen den Hörer abnehmen (z.B. um in den Heizraum hineinzulauschen, ob der Brenner auch wirklich läuft).
  • ATH: den Anruf beenden

 

Ein kleines Beispielprogramm zum Zusammenwirken con C-Control und GA628 gibt es hier.

 

 

Zusammenwirken von C-Control und Handys mittels SMS (Kurznachrichten).

 

Verschiedene Handys sind in der Lage, über die serielle Schnittstelle Anweisungen zum Versand von Kurznachrichten zu verstehen, umgekehrt können auch eingehende Kurznachrichten über die serielle Schnittstelle abgefragt und in der Folge ausgewertet werden. Es bietet sich daher die Möglichkeit an, mit präzisen, codierten Steuerbefehlen per SMS aus großer Entfernung Steueraufgaben durchzuführen, bzw. auch begrenzte Datensätze abzufragen (in einem SMS können bekanntlich 160 Zeichen verstaut werden). Da es zu diesem Thema bereits eine ausführliche Dokumentation im Netz gibt, möchte ich mich hier nicht weiter damit beschäftigen, sondern auf die betreffende Homepage verweisen: www.fernwirken.tk.

 

 

Zusammenwirken von C-Control und Handys mittels Modem.

(hier am Beispiel des Siemens S25)

 

Eine weitere Kategorie von Handys verfügt über ein eingebautes Modem, welches eine vollwertige Datenübertragung ermöglicht. Allerdings ist die Anzahl der geeigneten Modelle eher beschränkt. Es eignen sich beispielsweise verschiedene Siemens Handys (S25, C35i, M35i, S35i, S40, S45) und das Ericsson R320s, während bei anderen Ericsson-Modellen, welche laut Datenblatt ein eingebautes Modem besitzen, Vorsicht geboten ist, da bei diesen die Datenübertragung (auch über Kabel) nach dem IrDa-Protokoll abläuft. Nokia Handys mit eingebautem Modem dürften ebenfalls ungeeignet sein, da diese mit einem eigenen Schnittstellen-Standard arbeiten. Ebenfalls unbrauchbar sind jene Handys, die lediglich über ein sogenanntes Soft-Modem verfügen, also zur Kommunikation mit einem Computer noch eine zusätzliche PC-Card benötigen. Diese Auflistung ist natürlich nicht vollständig. Meine Erfahrungen beruhen fast ausschließlich auf dem Siemens S25, worauf sich auch die folgenden Ausführungen beziehen.

In diesem Fall kann das in der Ferne befindliche Handy (und die damit verbundene C-Control) über einen PC mit Modem angesprochen werden, und die Steuerbefehle sozusagen direkt von der Tastatur des PCs an die C-Control gelangen. Der eigentliche Vorteil ist aber, dass auch größere Datenmengen aus der Ferne abgefragt und am PC aufgezeichnet werden können. Man könnte sich also vorstellen, auf diese Weise sämtliche Datensätze abzurufen, die im Laufe einer Woche von einer mit einer C-Control ausgestatteten Wetterstation aufgezeichnet wurden. Nach erfolgreichem Eingang der Daten kann dann der Befehl zum Löschen des Speichers und zum Neustart der Aufzeichnungen erteilt werden.

         Wie läuft die Sache nun technisch ab? Alles beginnt schon mit einem kleinen Problem: die Schnittstelle des S25 arbeitet mit einer Übertragungsrate von 19200 bps, die C-Control hingegen nur mit halb so viel, also 9600 bps. So verstehen alle beide nur Bahnhof. Die Übertragungsrate des S25 lässt sich meines Wissens nicht ändern, wohl aber jene der C-Control. Allerdings ist dazu der Austausch des bestehenden Quarzes (4 MHz) mit einem doppelt so schnellen (8 MHz) erforderlich, es muss also etwas herumgelötet werden. Vielleicht gibt es andere Handys, die diesen Nachteil nicht aufweisen. Da ich leider nicht die Zeit und Mittel dazu habe, mehrere Dutzend Handys anzuschaffen und zu testen, fahre ich hier mit dem S25 fort. Eventuelle Informationen von auswärts zu diesem Thema sind natürlich willkommen!

Das Umrüsten der C-Control mit dem schnelleren Quarz bringt allerdings auch einen Nachteil mit sich: die interne Uhr läuft nun doppelt so schnell, zeitgebundene Steueraufgaben werden dadurch schwieriger. Aber auch hier bietet sich eine Lösung an. Man kann sozusagen mit zwei Quarzen „zweigeleisig“ Fahren, d.h. im Normalbetrieb mit dem 4 MHz-Quarz und nur beim Telefonieren mit dem Gegenstück zu 8 MHz. Dies lässt sich verwirklichen, indem man den originalen Quarz von der C-Control entfernt und über ein Weichen-Relais einfach zwischen einem externen 4 MHz und 8 MHz Quarz hin und herschaltet. Das Kommando zum Umschalten kann sich die C-Control bei Bedarf selber erteilen. Schematisch würde das also so aussehen:

M-Unit mit „Doppelquarz“: über Port[8] kann von 9600 bps auf 19200 bps umgeschaltet werden.

 

Und wie weiß die C-Control, wann die Weiche bei einem eingehenden Anruf zu schalten ist? Ich habe dazu einen dünnen Kabel am Minuspol einer der Tastatur-LEDs angelötet und mit einem Digitalport der M-Unit verbunden. Bei einem eingehenden Anruf springen die LEDs an und die Spannung am Minuspol fällt von etwa 2,5 V auf etwas unter 2 V. Ein Digitalport kann diesen Unterschied als Übergang von High of Low erkennen und in der Folge kann die C-Control schnell die Weiche auf 19200 bps umstellen. 

Jetzt noch zur Schnittstellenverbindung: das S25 arbeitet nicht mit einem 5V Pegel wie das weiter oben beschriebene GA628, sondern  mit einem tieferen Pegel um 3,3V. Dies ist für die M-Unit leider zu wenig. Will man dennoch mit der M-Unit ohne aufwendigen Schnittstellenadapter und ohne teurem Datenkabel arbeiten, lässt sich eine relativ einfache Lösung finden. In der folgenden Grafik wird aufgezeigt, wie die 3,3V und 5V Pegel aneinander angepasst werden können.

 

Pegelanpassung M-Unit/S25

 

Sind die hardwaremäßigen Veränderungen durchgeführt und natürlich Handy und M-Unit wie beschrieben verbunden, kann’s auch schon losgehen. Ach ja, das S25 muss zuerst noch durch richtige Menüauswahl in den Fax/Daten-Modus umgeschaltet werden. Jetzt den PC anwerfen, über Hyper-Terminal die Nummer des Handys anwählen, und schon müsste eine Datenverbindung zustande kommen, vorausgesetzt die C-Control wurde entsprechend programmiert, den eingehenden Anruf auch anzunehmen. Alles was ich jetzt an der Tastatur eintippe, wird nun vielleicht Hunderte von Kilometern entfernt vom Handy über die serielle Schnittstelle an die C-Control übergeben. Ich könnte jetzt also den Befehl erteilen, alle Daten aus dem Speicher auszulesen und zu übertragen, und so die aus der Entfernung kommenden Daten sicher auf dem PC ablegen.

Anmerkung: beim Anwählen des Handys über ein Modem lautet der Befehl „ATDnummer“ (z.B.: ATD555333111), es wird also kein Strichpunkt gesetzt. Mit Strichpunkt wird eine Gesprächsverbindung aufgebaut, ohne eine Datenverbindung. Allerdings sind nach meiner Erfahrung nicht alle SIM-Karten für so ein Vorhaben geeignet, anscheinend wird dieser Dienst von den Netzbetreibern nicht immer standardmäßig angeboten.

Und wie immer gibt es hier noch ein kleines Beispielprogramm. 

 

 

Siemens S45:

 

Letztlich habe ich mit einem Freund die Erfahrung gemacht, dass beim Siemens S45 die Probleme mit den unterschiedlichen Schnittstellengeschwindigkeiten wegfallen. Das Handy stellt sich nämlich automatisch auf die Geschwindigkeit seines „Partners“ ein.  Im Falle der C-Control muss diese nur anfänglich ein „AT“ an das Handy schicken und schon hat sich das Handy auf 9600 bps eingestellt. Das Gebastle mit den Quarzen kann in diesem Falle also wegfallen, allerdings muss man für so ein Handy schon ein paar Euro mehr berappen. Die Anpassung der Schnittstellenpegel ist auch beim S45 erforderlich.

ċ
demoS25.bas
(2k)
Martin Thalheimer,
16 Dec 2008, 05:57
ċ
demoga628.bas
(2k)
Martin Thalheimer,
16 Dec 2008, 05:59
Comments