Neuentwicklung des M004-Weather - Ein Wettermodul für den KC85

Modullogik
AVR-Logik
VEML
VEMLP
SIundRS
Regensensor
RegensensorE
Gehaeuse
Prototyp
PrototypB
ExtLCD
Main
Grafik
Konfig
Export
Serientyp

Was heißt "Weather" auf Deutsch? Wetter. Und was hat ein KC85/4 mit dem Wetter zu tun? Im Prinzip nichts, aber mit dem Modul M004 alles.

Die Idee zu diesem Modul existierte schon eine geraume Zeit und war geboren, als das M051 Einzug in meine Modullandschaft hielt. Nicht die Möglichkeit des Scannens von Texten und Fotos war der Grund dafür, sondern die zum Betrieb von I²C-Geräten, insbesondere von Sensoren zur Erfassung von Wetterdaten.
Und so wurde aus der Idee Wirklichkeit und es entstand ein neues, vom Design her einzigartiges Modul für den KC85: Das M004 als Wetterstation.

Natürlich läßt sich einwenden, daß es sich um eine sinnlose Spielerei handelt, denn Wetterstationen, zumal preiswert und mit besserer Technologie, gibt es wie Sand am Meer und bei jedem gut sortierten Discounter.
Doch was ist der schnöde Kauf eines solchen kompakten Gerätes gegen die Entwicklung eines Eigenen, betriebsfähig an einem "alten" 8-Bit-Computer mit einer sagenhaften CPU-Geschwindigkeit von rund 1.8 MHz.

Entstanden ist eine Entwicklung, die sich sicherlich nicht verstecken muß, auch wenn sie keine Hochtechnologie darstellt.

Das M004 besteht zum einen aus dem eigentlichen KC85-Modul - einer Platine, welche länger als eine originale Modulplatine ist - und zum anderen aus der Peripherie, die durch herkömmliche PS/2-Kabel mit 6-poligen Mini-DIN-Verbindern angeschlossen ist. Diese Peripherie sind die Meßsensoren für den Außenbereich und dazu zählen die Meßgrößen:
- Temperatur,
- Luftfeuchtigkeit,
- Luftdruck,
- Beleuchtungsstärke,
- UV-A-Index,
- Regenerkennung.

Das Markenzeichen des Moduls ist sein integriertes Textdisplay, mit 4 Zeilen zu je 20 Zeichen. Das Layout der Platine orientiert sich zum einem an dem LCD und zum anderen an dem moduleigenen Gehäuse, welches im 3D-Druck-Verfahren hergestellt wird. Das spezielle Gehäuse ist notwendig, da es zur Montierung des Displays dient.

Die Sensoren arbeiten auf der Basis des I²C-Standards. Auch für diese wurden eigene Gehäuse entwickelt, um sie sicher im Außenbereich unterbringen zu können.

Das Herz der Modulelektronik ist ein Mikrocontroller vom Typ Atmega32(L). Hinzukommen ein Z80-PIO - dieser dient der Kommunikation zwischen dem KC85 und dem AVR - ein Z80-CTC, welcher verwendet wird, wenn die Software zum M004 interruptbetrieben zum Einsatz kommt und ein EEPROM. Auf dem EEPROM befinden sich die CAOS-Programme, um das Modul vom KC85 aus zu bedienen. Das heißt, das M004 ist eine Einheit aus Hard- und Software.
Wie bereits erwähnt, ist der Atmega die Steuerzentrale der Wetterstation. Dazu wurde eine umfangreiche, komplexe Firmware entwickelt, welche neben der Bereitstellung der Funktionalität zur Wetterdatenerfassung eine anwenderspezifische Verwendung des Moduls zuläßt. Diese beinhaltet sowohl den Anschluß eigener I²C-Geräte, als auch die Benutzung des Displays zur Darstellung von Zeichen.

Für spezielle Einsatzorte besteht die Möglichkeit, ein baugleiches externes LCD an einer Mini-DIN-Buchse an der Modulvorderseite anzuschließen. Die Firmware des AVR erkennt dies automatisch.

Es würde bei weitem den inhaltlichen Rahmen an dieser Stelle sprengen, sämtliche Details des Wettermoduls zu beschreiben. Die Entwicklung des M004 begann praktisch schon Ende 2018 und ist zum jetzigen Zeitpunkt immer noch nicht abgeschlossen.
Im aktuellen Stadium wird eine Prototypplatine aufgebaut, in der Hoffnung, daß sie so funktioniert, wie während der gesamten Entwicklungsphase der Versuchsaufbau.

Begleitend zur Entwicklung wurde ein Handbuch geschrieben. Dieses ist zwar momentan in einem vorläufig abgeschlossenen Zustand, jedoch noch nicht zur Korrektur gelesen. Sobald dies der Fall ist, kann es hier als "Blätterbuch" eingesehen werden.
Lassen Sie sich bis dahin von den Fotos inspirieren. Vielleicht sind diese ein Anreiz für Sie, die Wetterstation für den KC85 nachzubauen.

Bleibt noch zu erwähnen, daß im Download-Bereich alle Daten und Programme bereitstehen, um dieses Modul nachzubauen und in Betrieb zu nehmen. Dazu zählt auch das Handbuch in seiner aktuellen Version.

Inzwischen, Mitte Februar 2020, wurde die Prototypplatine vollständig aufgebaut und zeigte nicht die erwartete Funktion. Letztendlich stellte sich bei allen Fehlern heraus, daß es nichts Gravierendes ist. So wurde zum Beispiel für die Erzeugung des Kennbytes ein 74LS00 verwendet. Erforderlich ist jedoch ein gleichartiger Schaltkreis mit Open-Collector-Ausgängen. Beim ISP-Anschluß fehlte die GND-Leitung und der Fehler mit dem größten Aufwand zur Beseitigung war der direkte Anschluß des Quarzoszillators am Kanal-0-Eingang des CTC. Der CTC kann nur mit maximal der halben Systemtaktfrequenz im Zählermodus betrieben werden. Daher sind ein Megahertz zuviel. Da es keine Quarzoszillatoren mit weniger als einem Megahertz gibt, mußte die vom M066 bekannte Lösung mit der Verwendung eines 74LS74 übernommen werden. Dafür wurde eine kleine Aufsteckplatine angefertigt und am Kanal 0 des CTC liegen nun 250 kHz an.
Ein weiterer Fehler war das Nichtvorhandensein des pull-up-Widerstandes für den Interruptausgang der RTC. Der Widerstand wurde einfach vergessen und dies äußerte sich dann durch sporadische Interruptauslösungen und Abstürze des AVR.
Nach der Behebung aller Fehler zeigte das M004 die gewünschte und erwartete Funktion, inklusive der "in-system"-Programmierung.
Auf einem Foto ist die vollständig aufgebaute Prototypplatine zu sehen und auf einem weiteren die erste (unbestückte) Serienplatine der Revision 1.04.

SerientypB
Auswahl
Zeitgeber

Mittlerweile steht auch dieses Projekt vor dem Abschluß. Leider, muß ich sagen, denn es hat sehr viel Spaß gemacht. Aber es wird neue Aufgaben geben.
Die aufgebaute Serienplatine (auf einem Foto ist sie zu sehen), funktionierte wie erwartet sofort fehlerfrei. Die zum M004 gehörende Software wurde fertiggestellt und für die Teilprogramme wurde ein Auswahlmenü entwickelt. Damit lassen sich diese bequem starten und sind somit nicht als eigenständiges Programm lauffähig.
Das Modul fungiert nun auch als Zeitgeber für CAOS, in dem es die aktuelle Zeit und das Datum im MS-DOS-Format (gleichzeitig auch das Format der Vinculum-Schaltkreise VNC1/VNC2) in den Speicherzellen 000Ch-000Fh ablegt. Dadurch werden Dateien, die auf einem USB-Medium, unter Zuhilfenahme eines M052, gespeichert werden, mit einem gültigen Zeitstempel versehen, ohne daß es dazu einer D004/D008-Floppy-Disk-Basis bedarf. Unterstützt wird das Ganze durch die neue Autostartfunktionalität von CAOS 4.8. Damit wird beim Kaltstart des Rechners der M004-Zeitgeber automatisch aktiviert.
Sie können die Zeitgeberfunktion auf einem Foto betrachten, inklusive der M004-eigenen 7-Segment-Uhr.

Betrieb1
Betrieb2
Komplett

Eine Weile hat es gedauert, bis das M004 sein schickes gelbes Gehäuse beziehen durfte, denn ich hatte mich entschlossen, das Modul um eine Funktionalität zu erweitern, die zwar auf dem Schaltplan und dem Layout schon vorgesehen ist, jedoch in dieser Art nicht umzusetzen war: Eine akustische Alarmfunktion.
Der Alarm wird immer dann ausgelöst, wenn der Speicher für die Langzeitdatenerfassung voll ist, d.h. 72 Datensätze gespeichert sind. Dann ertönt in einem Abstand von 2 Minuten drei Mal ein zweiminütiges Sirenensignal. Da das Signal mit der Sound-Anweisung von Bascom erzeugt wird, würde in diesen 2 Minuten der AVR "stillstehen". Um das zu verhindern, wurde ein zweiter AVR - ein ATTiny85 - auf einer kleinen Patch-Platine installiert, welche an dem Platz eingebaut ist, an dem ursprünglich der Lautsprecher vorgesehen war. Dieser Lautsprecher befindet sich nun ebenfalls auf der kleinen Aufsteckplatine. Es hat ein wenig gedauert, bis die Alarmfunktion stabil implementiert war, da der ATTiny85 doch etwas "eigen" ist.

Zur Abrundung der Modulfunktion ist nun noch vorgesehen, eine 4-stellige 7-Segment-Anzeige mit einer Blinkfunktion zu integrieren. Diese soll dann aktiv sein und die Uhrzeit anzeigen, wenn kein LCD eingeschaltet ist.

Fortsetzung folgt ...

M004-Weather
M004 - Weather
SRNSCHAU
Kein schöner Land
M066-KLANG
M066 - KLANG
M041-2x16 KB EEPROM
M041 - EEPROM
ENDIM622
XY-Schreiber Endim
Drucker K6304
Drucker K 6304
M030-Eprommer
M030 - Eprommer
KC854 original
85/4 - original
KC855 erweitert
85/5 - erweitert
D004D008
D004 / D008
Disk-Laufwerke
Disk-Laufwerke
PS2-Tastatur
PS/2-Tastatur
Module
Steckmodule
KC855 modifiziert
85/5 - verändert
PS2-Interface
PS/2-Interface
CF-Kartenleser
CF-Kartenleser
M051-Scanner
M051 - Scanner