PAC / MSR Host-System & Remote-I/O Controller

 
SEPIA
  Industrie - Rechner
Individuell anpassbar . betriebssicher . langzeitverfügbar . 100% virenfrei . hohe Konnektivität
Echtzeit- und netzwerkfähig . stromsparend . professionell . und einfach in der Programmierung

SEPIA - Bus . CPU Karte . IDE/CF . Ethernet VGA PS/2 LCD . 8-fach Relais . DAC-Karte
Memory-Karte . COM-LPT-RTC-WDC . Clock Bus-Terminierung & Diagnose . 8-fach Opto-Input
  AD1- 16BIT Messkarte . Counter-Karte 2x 24BIT . 32-fach Opto-Input . 32-fach Opto-Output . Power
... hier geht es zur FAQ ...

SEPIA steht für: "Secure Embedded Platform for Industrial Automation"
Synergien nutzen
SEPIA ist eine sehr flexible, skalierbare PAC Remote-I/O Plattform, mit welcher Sie Ihre Kosten drastisch senken können. Ganz gleich, ob Sie über 100 Kanäle messen, steuern oder regeln möchten, direkt vor Ort programmieren, oder per Remote-I/O über größere Entfernung fernsteuern und vielfältige Messdaten über ein Netzwerk sammeln möchten. SEPIA versteht sich zudem als eigenständiger Industrie-Rechner und autarkes Field-I/O Kommunikationssystem. Eine offene Bus-Struktur bietet die Gelegenheit, etliche Vorteile aus verschiedenen "Technik-Welten" zu kombinieren, oder in vorhandene Systeme einzubinden. Unter diesem Aspekt entsteht ein völlig transparentes Rechnerkonzept. Dabei werden möglichst viele Industrieschnittstellen mit moderner Technik gekoppelt und in ein zukunftweisendes PAC-System integriert, welches auf Robustheit, maximale Sicherheit und Kompaktheit, sowie für permanenten Dauerbetrieb ausgelegt wurde. Der erweiterte Temperaturbereich ermöglicht zudem Einsätze in der Industrie bei widrigsten Bedingungen.

Integration
Der modulare Aufbau erlaubt eine vielfältige Zuordnung diverser Systemschnittstellen und ermöglicht eine einfache Integration in eigene MSR-Applikationen. Durch den suksessiven Ausbau mit Erweiterungskarten (Europa-Format) ist das System äußerst variabel und kann mit nur wenigen Handgriffen auf verschiedene Anwendungen zielgenau errichtet werden. Dabei kann SEPIA sowohl eigenständig als Host-Rechner, oder je nach Schnittstellenzuweisung als Endgerät betrieben werden. Einer der Schwerpunkte liegt desshalb in der Verwendung als leicht programmierbarer Feldbusslave über Serielle oder Ethernet Remote-I/O-Anbindung. Da im Gegensatz zu anderen IPC, SPS und Remote-I/O Systemen keine spezielle Automatisierungssoftware, oder fremde Betriebssysteme benötigt werden, kann der Anwender über sämtliche Funktionen frei verfügen. Somit unterliegt die Programmgestaltung nicht länger der Begrenzung von produktspezifischen Bausteinen, oder einzubindenden Bibliotheken.

Energieeffizienz und Sparsamkeit
Da SEPIA dank geringer Stromaufnahme (gerade mal ein 1/10 eines normalen PCs) vollkommen lüfterlos arbeitet und somit keiner zusätzlichen Kühlung und Wartung bedarf, ist eine kostenintensive Schaltschrank- klimatisierung (jedenfalls für unser System) überflüssig. Die normale Umgebungstemperatur ist vollkommen ausreichend, solange kein Wärmestau die natürliche Luftkonvektion behindert. SEPIA ist in der "Economy" Industrial-Version für 0 ...+70 Grad Celsius spezifiziert. Die "Heavy" Industrial-Version ist für -25 ...+85 Grad Celsius spezifiziert. Das hier verwendete Schaltnetzteil (Einsatz nur im 63 TE Tischgehäuse) ist jedoch bei beiden Varianten nur für -25...+70 Grad Celsius zugelassen. Falls höhere Anforderungen bestehen, können wir Ihnen gerne ein spezielles Angebot erstellen.

Gehäuse und Baugruppenträger - Versionen
Neben Einzelkomponenten, wird die Grundversion in mehreren Aufbaustufen angeboten: Als 3HE - 63/42 TE komfortables Labor-Tischgerät (Foto unten) und als Baugruppenträger (Foto oben) ohne Gehäuseschale zur Montage als 19 Zoll Rack-Einschub für Europakarten-Trägersysteme. Die Trägersysteme können zudem wahlweise mit / ohne Montagewinkel für Schaltschrank- und Wandmontage geliefert werden. Damit ist SEPIA portabel, als auch zur ortsfesten Installation geeignet. Die mit 14 Steckplätzen bestückte Platine nutzt eine Breite von 31,5 cm. Dieser Bus wird gleichermaßen für 84 TE und 63 TE Systeme verwendet. Die Aufteilung der Teil-Frontplatten ist wie folgt festgelegt: 11x 4 TE + 1x 4/6 TE + 1x 12 TE sowie 1x Expandersteckplatz, falls weitere Steckplätze über einen Zusatzbus benötigt werden. Der kleinere Bus bietet hingegen 8 Bus- Steckplätze und ist zur Montage in 42 TE Baugruppenträgern vorgesehen. Beide BGT (Baugruppenträger) sind sowohl in der "Standard" und HEMV (Heavy EMV) Version lieferbar. Die Standard-Version kann bei Schränken Einsatz finden, die bereits EMV-geschirmt sind. Alle Erweiterungskarten können ebenso i.d. HEMV-Version gefertigt werden. Dazu sind die ALU-Frontplatten mit seitlichen Schrimkontakten (auf beiden Seiten) versehen. Die breite 19" Zoll Variante kann zusätzlich mit einem TFT/LCD Farb-Display im Frontbereich ausgestattet werden, um Programmierungen und/oder Eingaben vor Ort zu tätigen, oder Messergebnisse zu visualisieren. In besonderen Fällen können Baugruppenträger schock- und schwinggeprüft werden. Diese entsprechen dann der Norm IEC 60 297-3-101 sowie IEEE 1101.1. Ebenso sind spezielle Baugruppenträger mit hohem EMV-Schutz (Option HEMV) für die Schwerindustrie und Bahnanwendungen lieferbar.
Ein Beispiel zur Vollausstattung (Tischgehäuse):
CPU Karte mit COM1 (RS232), LPT1, Temperatursensor, Bus-Treiber
CLK Karte mit Clock- und Power-Fail Überwachung, Diagnose, Alarm-Ausgang
RTC Karte mit Real-Time-Clock + Akku, WatchDog, 2.COM-Port, 2.LPT-Port
IDE Karte mit CF-Einschub, optional mit SD Adapterkarte (als Slave-Laufwerk) 
NET Karte mit Ethernet-Port, PS/2-Tastatur, LCD-RS232-Port (TTL-Anschluss)
MEM Karte mit 1 MB SRAM (Datenerhalt über Akku)
SEA Karte mit 3.COM-Port (RS232) und AUX-Schnittstelle über 8255 I/O
ADC Karte mit 16 analogen Eingängen, 16 BIT A/D-Wandler, U oder I (0..20mA)
OI8 Karte mit 8 isolierten Eingängen, interruptfähig über Sub-Prozessor
E32 Karte mit 32 optoisolierten Eingängen (24 Volt DC, bipolar)
A32 Karte mit 32 optoisolierten Ausgängen (je max. 100mA DC)
CNT Karte mit 2 Kanal 24(25) BIT, Inkremental U/D-Counter, 10 MHz Zähler
RL8 Karte mit 8x 2 Ampere-Relais, UM-Kontakt, einzeln isoliert

Die ersten vier Karten stellen gemeinsam mit der Bus-Platine nebst Netzteil und Gehäuse ein Grundsystem. Alle anderen Karten können beliebig kombiniert werden. Mit neun A32 Karten könnte man zum Beispiel 288 digitale Ausgänge schalten. Ebenso können die freien Steckplätze mit neun ADC-Karten bestückt werden. In diesem Fall stehen dann 144 analoge Messkanäle zur Verfügung. Wird SEPIA als reiner Remote-Controller verwendet, kann die RTC- und IDE-Karte ggf. entfallen. Somit ergeben sich dann zwei weitere Steckplätze für zusätzliche MSR- oder I/O-Funktionen mit insgesamt 352 Kanälen, bei nur knapp 35 cm Baugruppenbreite!

Programmierung mit SEPIA Advanced-BASIC
In der Grundversion wird neben dem BIOS ein leistungsfähiger Debugger-Monitor für Maschinensprache, sowie ein komfortabler BASIC-Interpreter mit HDD-Unterstützung startfertig mitgeliefert, sodass man sofort mit der Programmierung beginnen kann. Dazu benötigt man weder Windows, noch andere Betriebssysteme, oder Hochsprachen-Compiler. Das Betriebssystem ist bereits im Advanced-BASIC-ROM fest integriert. Dadurch wird eine hohe Datensicherheit gewährleistet, da sich dieser spezielle Speicherbereich nicht wie bei anderen Betriebssystemen überschreiben oder manipulieren lässt. Weiterhin besteht die Möglichkeit, I/O-Funktionen über die COM1-Schnittstelle als Remote-I/O per Direktbefehl zu steuern. Somit lassen sich alle Baugruppen problemlos fernsteuern und in weitere Visualisierungsprogramme (zB: DASYLab®, Profilab-Expert, LabView®, Agilent (HP) Vee®, LabWindows®/CVI, MathLab® u.a.) ohne zusätzliche Treiber komfortabel einbinden. Soll SEPIA dennoch als vernetzte, dezentrale Steuerung unter Windows verwendet werden, kann die gesamte Kommunikation ebenso über den Ethernet-Port mittels virtueller COM-Schnittstelle umgeleitet werden. Alle Ein- & Ausgaben erfolgen anschließend "getunnelt" über die Benutzer >> Anwendung >> Betriebssystem >> Hardware Schnittstelle und zurück.


Copyright by Golftheman
Time-to-Market
Zeit ist Geld! Das hier mitgelieferte Advanced-BASIC ist speziell auf die Automation angepasst und ein ideales Werkzeug, denn man benötigt nur wenige Grundkenntnisse, um bereits nach kurzer Einarbeitung komplexe Abläufe, Steuerungen und Messdaten bei nur minimaler Projektierungszeit zu verarbeiten. Viele Probleme, die früher sehr zeitaufwendig in C auf teuren Plattformen gelöst werden mussten, können durch diesen modernen Interpreter blitzschnell mit wenigen Befehlen erledigt werden. Damit macht die Informatik wieder richtig Spass. Wer möchte, kann zudem den Interpreter als Grundmodul erwerben und nach seinen eigenen Vorstellungen ergänzen. Die Bezugsquelle ist: Dr. Hans Hehl.

Flexibilität 
Der SEPIA-Rechner bootet innerhalb einer Sekunde und gibt dabei die wichtigsten Initialisierungen aus. Im Start-Menue wählt man je nach Anwendung ein weiteres Untermenue aus, oder startet gleich den Interpreter. BIOS und BASIC-Interpreter sind auf größtmögliche Betriebssicherheit und Flexibilität ausgelegt. Der BASIC- Interpreter ermöglicht zudem einen Kalt- oder Warmstart. So können residente Programme (die sich noch im SRAM befinden) selbst nach einem Hardware-RESET sofort gestartet werden. Das hier verwendete BASIC unterstützt neben den HDD-Befehlen zusätzliche Spezialbefehle wie XDELAY, XPOKE, XPEEK, XSEG, XCIN, XCOUT, XGETIME, XGEDATE. Mit dem CALL-Befehl: CALL FFh kann man beispielsweise einen CPU-HALT erzwingen um den Alarm-Ausgang zu testen, oder zusätzliche Programmroutinen im RAM aufrufen. Werden zum BASIC zusätzliche Routinen in Maschinensprache programmiert, lassen sich diese gemeinsam mit SAVE abspeichern, sodass sie später wieder mit LOAD in den gleichen Arbeitsspeicher 1:1 zurückgeladen werden. Advanced-BASIC enthält zudem sehr genaue, umfangreiche 12-stellige Mathematikfunktionen wie auch fast alle trigonometrischen Funktionen. Diese Funktionen und Merkmale sucht man bei anderen SPS- und Remote-I/O-Systemen vergeblich.

Komplexe Dinge handhabbar machen
Durch die High-Level-Programmierung mit Advanced-BASIC konnte das Ziel von leicht programmierbaren Steuerungen endlich einmal praxisgerecht für den Anwender umgesetzt werden. SEPIA bietet zudem eine klare, transparente Struktur (durchgängiges Konzept mit Frontend Controls) und bietet nicht zuletzt dank Single-Task-Betrieb eine wirklich stabile, sowie hohe Performance bei Echtzeitprozessen. Eine vollständige Beschreibung sämtlicher Funktionen würde hier jedoch den Rahmen dieser Produktvorstellung sprengen.

SEPIA - Anwendungen in Stichworten
Automation im Bereich der Lebensmittelindustrie, Steuerung zur dezentralen Energieerzeugung, Messungen an Hybridantrieb- und Elektrofahrzeugen, Smart Meters & intelligente Gateway Applikationen, komplexe Automatisierung und Steuerung von Industrieanlagen, vernetzte/dezentrale Prozesssteuerung, kommunikative Sicherheitssysteme, Robotik, Sondermaschinenbau, Test- und Prüfstände im Bereich der Elektrotechnik und Mechatronik, intelligente Mess- und Regeltechnik, Energiedatenmanagement sowie Leistungs- und Status- Monitoring von Solar- Windkraft- und klassischen Energieanlagen, smart grid Anwendungen, vernetzte Gebäudetechnik, vollautomatisierte Prüfanwendungen, Protokollierung & Überwachung in der industriellen Fertigung, intelligenter Schnittstellenwandler und Datenkonzentrator für Netzwerkanwendungen im Bereich der Telekommunikation, Fernwirken, Anwendungen im Bereich der Forschung - Wissenschaft - und Ausbildung, sowie Wetterdatenaufnahme, Umwelt-Technik, Überwachung und Steuerung sowie Simulation im Bereich der Automobil-, Bahn- und Luftverkehrstechnik, Automation und Kontrolle von Werkzeugmaschinen und diverser Automaten, KFZ-Prüfstände, Verpackungsmaschinen, vernetzte Schließanlagen und Zutrittskontollsysteme, sowie Messdaten-Fernüberwachung, Prozessvisualisierung, Datenlogger zur Überwachung von regenerativen Energieanlagen und BHKW´s, prog. Photovoltaik-Nachführungen... u.v.m.

Praxisbeispiele bei entsprechender Sensorik
Messen von: Spannung, Strom, Leistung, Druck, Füllstand, Temperatur, Verbrauch, pH-Werten, Drehzahl, Kraft, Dehnung, Winkel, Gewicht, Zeit... Schalten & Erfassen von: digitalen Zuständen über galv. getr. Relais und isolierte Optokoppler, steuern von Heizung, Belüftung, Gebäudeklima, sowie schalten von Pumpen und Ventile... Programmierbare Regelkeise: pressen, zählen, nachführen, transportieren, takten, überwachen, wiegen und sortieren von Stückgut... Sicherheitstechnik: erfassen von Brand-/Alarmgebern und Koordinierung von Meldelinien nach programmierbaren Prioritäten... Messen und Steuern von: hydraulischen Aktoren, Stellmotoren in Solaranlagen, Bremsen- und Motorprüfstände... Umwelt: Überwachung von Konzentrationen sowie Füllstanden, messen von Gasen, Schadstoffen u.a. Belastung in diversen Medien... Telekommunikation: Erfassen und übermitteln von vielfältigen digitalen und analogen Messdaten, messen und steuern über Netze... Verkehrstechnik: Leittechnik, Verkehrskontrolle, steuern von Ampelanlagen, Wegweisern und Anzeigetafeln, intelligent traffic control... Wissenschaft: Forschung und Entwicklung, Prototypenbau, Industriemessanlagen, Datenerfassung im Netzverbund (bsp. Umwelt- und Wetterdaten)... u.v.m.


Individualität
Neben unterschiedlichen Bestückungsvarianten (Sie zahlen nur die Funktionen, die Sie tatsächlich benötigen) bieten wir gegen einen kleinen Aufpreis eine individuelle Frontplattenbeschriftung mit verschiedenen Fonts, in unterschiedlichen Größen, Farben, oder Landessprachen an. Bei OEM-Versionen können zusätzlich kleine Logos auf die Frontplatte gedruckt werden. Diese müssen uns fertig freigestellt als Bild-Datei im TIF oder 24bit BMP-Format gestellt werden. Ein spezielles CNC-Fräs- und Druckverfahren (im eigenen Haus) ermöglicht 3HE 4TE Frontplatten-Prototypen innerhalb von nur 48 Stunden versandfertig herzustellen. Der spezielle Aufdruck wird thermisch fixiert und erhält zum Schluss eine Versiegelung, die vor Abnutzung und UV-Strahlung schützt.


SEPIA VG64 A/C Bus-System

Bild: 8 Slot SEPIA-MINI-BUS für 42 TE Baugruppenträger

Bild: 13(14) Slot SEPIA-STANDARD-BUS für 63 TE Laborgehäuse und Baugruppenträger
Datenblatt / Manual

SEPIA System-Bus
In der Automatisierungstechnik reduziert der Einsatz von Buslösungen nicht nur die aufwendige Verkabelung, sondern erhöht gleichzeitig den Anwenderkomfort, sowie die Betriebssicherheit des gesamten Systems. Dabei tragen Bus-Konzepte mit leicht austauschbaren Komponenten generell zu einer drastischen Reduzierung von Servicezeiten bei. Die richtige Wahl des verwendeten Bus-Systems ist immer von zentraler Bedeutung, denn je nach Konzept kann sie für eine hohe EMV-Störsicherheit und Flexibilität später entscheidend sein. Somit haben wir uns nach vielfachem Abwägen sämtlicher Fakten für einen relativ kostengünstigen, kontaktsicheren  64pol. VG-Bus mit 3HE Europakarten entschieden, um nicht zuletzt auch die technischen und mechanischen Vorzüge von professionellen 19" Zoll Baugruppenträger und Gehäusen nutzen zu können.

Aufbau
Das Grundsystem besteht aus mindestens 3 Einheiten: CPU-Karte, SEPIA-Bus und CLK-Karte. Alle anderen Steckplätze sind individuell für Erweiterungskarten nutzbar. Um eine gut funktionierende Einheit zu bilden, sind neben Netzteil oder Power-Interface weitere Komponenten wie IDE-Karte und RTC-Karte von Vorteil. Kleinere, kostengünstige Remote-I/O-Systeme werden mit dem SEPIA-MINI-BUS und einem EMV-gerechten 42 TE Baugruppenträger realisiert. Diese gibt es neben 63 TE Laborgehäusen auch als Einschub-, Wand- oder Schaltschrankgehäuse.

Technik
Damit in einer stark belasteten EM(V)-Umgebung keine unerwünschten Stör-Effekte auftreten, wurde der gesamte Systembus in 6-Lagen Multilayer-Technik entwickelt. Die jeweils obere und untere Schicht besitzt eine durchgängige Kupferfläche, welche die eingebetteten Leiterbahnen wirksam vor elektromagnetischen Störfeldern schützt. Da im Innern der Bus-Platine die jeweils zweite Leiterbahnlage für den A- und C- Bus getrennt verwendet wird, ist zusätzlich eine gute HF-Entkopplung gegen Übersprechen erreicht. Die beiden mittleren Schichten dienen als zusätzliche Trennschirmung, sowie zur Anbindung des CPLD Controllers für Waitstate- und Interrupt-Funktionen. Das Layout wurde für Bus-Frequenzen von DC bis 33 MHz ausgelegt. Tests mit verschiedenen Signalen, Impedanzen und Logik-Pegeln zeigen bereits im Vorfeld, dass dieser Bus aus technischer Sicht auch für weitaus höhere Frequenzen geeignet ist. Somit wird eine hohe Qualität der zu übertragenen Signale erreicht, um die Funktionsfähigkeit jeder Baugruppe am Bus zu gewährleisten.

Sicherheit
Die SEPIA-Bus-Platine beinhaltet eine galvanisch getrennte Shut-Down-Schaltung mittels Optokoppler. Somit kann beipielsweise eine USV-Anlage ihre Meldung an die CPU-Karte weiterleiten und je nach Programmierung laufende Programme oder Daten sichern (Fail-Save). SEPIA selbst kann ebenfalls eine Meldung oder einen RESET für Fremdgeräte über den Bus absetzen. Hierzu sind zwei dig. programmierbare Ausgänge vorgesehen, die beispielsweise ext. Relais oder Optokoppler ansteuern können. Betrachtet man alle Sicherheits-Features wie WatchDog, Temperatursensor, Wiederanlaufschutz, Rückfallebene, Brown-out, Clock-Fail, Power-Fail und Fail-Save..., so erhöhen diese FEMA-Eigenschaften erheblich die Betriebssicherheit (siehe: Redundanz).

Waitstate und Multilevel-Interrupt
Der Bus beinhaltet je eine Interrupt- und Wait-State-Schaltung. Der Wait-State-Generator kann nach Bedarf über einen DIP-Schalter für I/O, MEM-Memory und M1 mit Clock- Wartezyklen aktiviert werden. Der im CPLD integrierte Echtzeit-Interrupt-Controller bietet der CPU-Karte die Möglichkeit einer vor-vectorisierten Interrupt- verabeitung. Diese Vorgehensweise erhöht die Prozessorleistung bei der Verwaltung, da die suksessive Rückfrage mittels Daisy-Chain über IEI/IEO-Anschlüsse zu den jeweiligen Bus-Einheiten komplett entfallen kann. Jeder Bus- Steckplatz besitzt dazu einen nummerierten Kanal, den der Controller auf der I/O-Adresse 0001h abspeichert und gleichzeitig an die CPU in Echtzeit überträgt. Die internen Interruptanforderungen werden in sog. „Interrupt Request Latch Registers“ in Echtzeit zwischengespeichert. Der Anwender kann nun zu jeder Bus-Einheit (falls diese eine Interruptsteuerung unterstützt) eine Verarbeitung für seine Anwendung programmieren. Mit jedem eingehenden Interrupt-Impuls wird nach Durchlauf des Prioritätenencoders das Übergaberegister wieder neu beschrieben (D-Latch). Somit werden immer kürzeste CPU-Reaktionszeiten auf verschiedene Ereignisse in Echtzeit individuell verarbeitet. Bei einem CPU-Clock von 10 MHz liegt die Periodizität unter 2 µs. Dabei werden alle Interrupts bereits ab einer Pulsbreite von 10ns sicher erfasst und durch einen Impulsformer an die CPU-Karte (auf Steckplatz 0) weitergeleitet. Jede Interruptleitung ist auf dem Bus mit einem PullUp Widerstand versehen und somit (wie bei ISA PC-Karten) für Open-Drain-Ausgänge aktiv low schaltend ausgelegt.

Die DIP-Schalter sind auf der Bus-Platine wie folgt festgelegt:

1=OFF + 2=OFF = 1x I/O Waitzyklus
1=ON  + 2=OFF = 2x I/O Waitzyklen
1=OFF + 2=ON  = 4x I/O Waitzyklen
1=ON  + 2=ON  = 8x I/O Waitzyklen
3=OFF / 3=ON  = 0x oder 2x MEM Waitzyklen
4=OFF / 4=ON  = 0x oder 2x M1 Waitzyklen

Interrupt-Priorität
Die hardwareseitigen Prioritäten sind jetzt wie folgt eingeteilt: Mit ansteigender Bus-Nummer fällt die Interrupt- Priorität. D.h. INT 8 besitzt beispielsweise eine höhere Priorität als INT 12. Die Auswahl bzw. Vorgabe der Priorität erfolgt somit direkt über den verwendeten Karten-Steckplatz. Auf Bus 0 (erster Bus links) ist die CPU-Karte jedoch fest vorgegeben, da dieser Steckplatz schaltungstechnisch als Interrupt-Receiver dient. Die Interupterzeugung arbeitet hier nach dem Verdrängungsprinzip. Beipiel: Wenn zwei Interruptsignale zur absolut gleichen Zeit (auf die Nanosekunde genau) erfolgen, wird das Signal mit höherer Priorität an die CPU-Karte  gesendet. Eine Besonderheit ist die Interruptzuweisung für den externen USV-Eingang. Bei einer positiven Flanke oder Dauerimpuls am Optokoppler-Eingang, wird hierzu der Interrupt 0 zwangsweise erzeugt. Dieser Kanal hat die höchste Priorität und kann beipielsweise für einen Power-/Fail-Save dienen, um das Speicherbild vor einer möglichen Spannungsunterbrechung zu sichern. Der Interrupt umgeht dabei intern den Decoder und sperrt die anderen IRQ-Kanäle, damit keine weiteren Unterbrechnungen den Datentransfer gefährden können. Das Register kann auch unabhängig von einem Interrupt ausgelesen werden. Ist beispielsweise nach dem RESET noch kein Interrupt erfolgt, lautet der Inhalt 80h. Nach einem Interrupt wird das Bit 7 gelöscht und der jeweilige Kanal (0..0Fh) in das IRQ-Register übertragen. Tritt noch während der INT-Verarbeitung ein weiterer Interrupt eines Bus-Teilnehmers auf, wird dieser im Register (unabhängig davon, ob die CPU bereit für neue IRQs ist) zwischengespeichert. Diese Maßnahme ermöglicht am Schluss einer ISR-Routine eine nochmalige Nachfrage, ob sich der Zustand des IRQ-Registers inzwischen verändert hat, um so gleich in die nächste ISR-Unterroutine zu springen.

IRQ, NMI und WDC Anzeigen (CLK-Karte)
Damit andere ECB-Karten zu einem aktuell bestehenden Interrupt keinen unnötigen IRQ absetzen, kann das Signal zusätzlich über den Bus (quasi als Listener) vorgeprüft werden. Dazu wurde die IEO-Leitung mit dem exklusiven CPU-Interrupt verknüpft. Somit werden alle IRQs und der NMI auf dem Bus nun auch über die Master-Clock-Karte mit angezeigt. Da Interrupts sehr schnelle Signale sind, wurde für die gelbe LED-Anzeige zusätzlich ein FlipFlop mit Zeitverzögerung integriert. Da weiterhin das IEI-Bus-Signal durch die komfortable Interruptkaskadierung nicht mehr benötigt wird, wurde hier das WDC-Signal aufgelegt. Diese Schaltung hat zwei Vorteile: 1) Andere Karten können den WDC selbst auswerten und technische Sicherheitsvorkehrungen treffen (bsp. shut-down, Lastabwurf..).   2) Das Signal wird über den Bus zur CLK-Karte übertragen und kann dort angezeigt werden, sowie das zentrale Alarm-Relais (nach Freigabe durch DIP-Schalter) mit auslösen um externe Geräte zu informieren bzw. zu schützen.

Datenblatt Bus-Belegung



CPU-Karte, BIOS, Schnittstellen und Bus-Treiber
Datenblatt / Manual zur Karte

Kurzbeschreibung
Durch Verlagerung vieler I/O- und Grundfunktionen auf umliegende, intelligente Peripherie und Prozessoren (bsp. ATMEL® Risk-Prozessor, x86 Net-Controller, PARALAX® Propeller, diverse CPLD mit integrierten Statmachines) wird der SEPIA Hauptprozessor entsprechend stark entlastet, so dass selbst bei einer niedrigen Taktung dennoch eine hohe Verarbeitungsgeschwindigkeit besteht. Die CPU-Baugruppe kann auch ohne Bus-System mit verschiedenen Quarzoszillatoren bis 8 MHz direkt als SBC betrieben werden. Bei höherer Taktung > 8 MHz werden die Peripherieschnittstellen über einen zuschaltbaren Waitstate-Generator von der Bus-Platine aus gesteuert und ein schneller Zilog® Prozessor verwendet. Die CPU-Taktrate hat keinen Einfluss auf die Baudrate der ser. Kommunikation von Schnittstellen, da diese unabhänig zum Systemtakt aufbereitet wird. DIP-Schalter geben während des Bootens die erste Grundinitialisierung vor. Da bei SEPIA keine Treiber verwendet werden, kann durch direktes überladen der I/O-Register der entsprechende UART für andere Baudraten oder Handshake-Protokolle einfach umprogrammiert werden.

Die SEPIA-CPU wurde für ein Bus-System entworfen, dass einem reduzierten VMEbus für 3HE Europakarten mit 100x160mm Maßen entspricht. Abwärtskompatibel zum legendären ECB-Bus wurden jedoch noch zusätzliche Leitungen in die Schaltung eingebracht, um eine höhere Perfomance und I/O-Flexibilität zu bieten. Um die CPU-Karte bus-fähig zu gestalten, werden u.a. vier Leitungstreiber vom Typ. 74245 verwendet. Der interene Taktoszillator wird für den Stand-alone-Betrieb verwendet. Im Busbetrieb wird hingegen die CPU-Karte über einen externen Master-Clock am CLK-Pin. als Senke angesteuert. Dazu muss künftig ein Jumper ein- gestellt werden, da der Oszillator für die int. RESET-Aufbereitung und zur Initialisierung von weiteren Bauteilen benötigt wird. Durch diese Maßnahme liegen alle weiteren Steckkarten parallel in Phase mit dem Clock-Signal und können zudem bis in den unteren Hz-Bereich getaktet werden, um beispielsweise CPU-Einzelschritte bei der Programmanalyse zu verfolgen. Die CLK-Karte (letzte Steckeinheit rechts am Bus) verfügt zusätzlich über eine variable Terminierung ähnlich SCSI, die bei Industrie-Applikationen immer vorhanden sein sollte, um HF- Reflektionen, Transienten oder Glitches zu verhindern, oder wirksam zu bedämpfen. Ein Übersprechen der Signalleitungen lässt sich durch Nutzung einer doppelseitigen- oder Multilayer-Bus-Platine, welche über durchgängige HF-Kupferflächen verfügt, am besten vermeiden. Mit diesen, einfachen, schaltungstechnischen Maßnahmen wird bereits eine sehr hohe EMV-Störsicherheit verwirklicht.

Viel Wert wurde zudem auf eine recht aufwendige RESET-Schaltung im CPLD gelegt, um einen sehr sicheren Kaltstart bei zuschalten der Spannungsversorgung, oder bei Bedienung des RESET-Tasters zu gewährleisten. Über einen Watch-Dog (auf der SER-PAR-RTC-Karte enthalten) kann der RESET bei Time-Out erfolgen, da diese Signalleitung auf dem Bus anliegt. Dieses Signal (GND schaltend) kann zudem für eine Meldeleitung Verwendung finden, oder angeschlossene Geräte neu mitinitialisieren (save-mode für Wiederanlauf). Eine LED gibt Auskunft über die erfolgreiche Initialisierung der Karte. Ein kl. Piezo-Lautsprecher dient als akustisches Quitierungssignal und kann mit dem Befehl XPBELL in Tonhöhe und Tonlänge variiert werden. Daneben gibt es den Befehl BEEP, welcher einen einfachen Ton erzeugt, sowie RINGBELL, welcher zusätzlich den Steuercode 07h (ASCII-Zeichen für BEL) auf COM1 überträgt. Ein im Sockel angebrachter Sensor misst die Temperatur direkt am Chip-Gehäuse mittig unter der CPU. Die Impulsauswertung des Sensors (TMP04) übernimmt dabei der CPLD-Baustein mit einer triggerbaren Statemachine in 50ms Abständen. Zur Messung sind daher nur wenige Codezeilen nötig, um die Temperatur in Grad-Celsius zu berechnen.

Einfaches Programmierbeispiel:

100 REM CPU-Temperatur ausgeben
110 CLS 
120 LOCATE 10,5
130 PRINT "CPU-Temperatur = "; : XGETEMP

Die Programmierung der CPU-Karte erfolgt über die frontseitige V24-Schnittstelle, welche als Modem mittels 9pol. SUB-D 1:1 Kabel mit einem Terminal, PC oder Notebook verbunden wird. Ist am Rechner kein RS232- Anschluss vorhanden, kann ein USB-RS232-Adapter als vituelle COM-Schnittstelle eingesetzt werden. Über ent- sprechende PC-Terminal-Software wird die CPU-Karte direkt mit Advanced-BASIC programmiert. Dazu gibt es verschiedene Terminal-Software (z.T. auch kostenlos) im Internet. Zur seriellen Kommunikation dienen zwei zusätzliche Handshake-Leitungen: RTS und CTS. Mit DIP-Schalter 1+2 lässt sich die Baudrate der Konsole auf 1.200, 9.600, 19.200 oder 115.2 kBaud vor dem Booten einstellen. Die parallele LPT-Schnittstelle (25pol. Buchse) dient als normale Druckerschnittstelle gemäß Centronics® nach IEEE1284. Sie arbeitet beispielsweise als Protokollschnittstelle (ua. mittels Print# -Befehl), womit sich auch das BASIC-Listing oder andere Bildschirmausgaben einfach ausdrucken lassen. Da sich hinter der LPT-Schnittstelle ein PPI-8255 verbirgt, können diese Anschlüsse auch für andere E/A-Aufgaben mit TTL-Pegel herangezogen werden.

Ein Diagnose-Tool hilft bei der Prüfung, Kontrolle und Zuordnung von Schnittstellen:

Die systemspezifische Adressvergabe wurde in der MapAll.ASM festgehalten.

Stabilität
Um die Stabilität des Systems bereits im Vorfeld zu testen wurden harte Stressprüfungen unter extremen Temperaturen und CPU-Belastungen bei Übertaktung von 120% erfolgreich durchgeführt, denn mit dieser Methode lassen sich Schwächen im Schaltungsdesign oder in der Kommunikation sofort aufdecken. Dies soll jedoch nicht Anlass geben, das System oder die CPU-Karte von Anfang an zu übertakten. Nähere Angaben zu den Belastungstests werden jedoch erst nach Freigabe und Abschluss aller Kartendesigns erfolgen.

CPU Datenblatt von Zilog®

 
Betrieb mit Erweiterungen
Eine zweite Erweiterungskarte bietet neben einem WDC und RTC (für Datum und Uhrzeit), zusätzlich je einen
COM- und LPT-Port, die der Nutzer frei programmieren kann. Mit DIP-Schalter "4" wird auf der CPU-Karte der interne 64k Memory-Bereich gesperrt (disabel), sodass der Bus mit Steckverbinder gemäß DIN41612 extern über den gesamten Speicherbereich verfügen kann. Damit werden beispielsweise größere Programme (oder später CP/M?) über die externe 1MB Speicherkarte wie eine virtuelle Floppy ladefähig. Diese Adressleitungen (A16..A19) werden durch ein Segmentregister + BANKEN-Signal auf OUT0 und Bit7 erzeugt. Wer gleich mehrere Programme in der EPROM-Bank ablegen möchte, kann die Umschaltung über dieses Register selbst vornehmen und per Jump-Befehl anschließend aufrufen. Hierzu sind jedoch Fachkenntnisse in der speziellen Programmierung von Mikroelektronik erforderlich. Die max. Speichergröße der Memory-Karte beträgt 512k x 8 (EPROM) +  512k x 8 (SRAM), sowie zusätzliche 32k bzw. 128k für das Boot-EPROM, welches nach dem Start ab Adresse 0100h wieder ausgeblendet wird. Diese Vorgehensweise ist für spätere Betriebsystem- änderungen (bsp. auf CP/M, ZDOS, K-DOS) notwendig. Wer diese Option nicht nutzen möchte, belässt den Schalter "4" auf ON und verwendet den internen Speicher auf der CPU-Karte. Ein IDE-Interface ermöglicht den Zugriff auf Festplatten oder moderne Speichermedien (bsp. SSD, CF, SD...) gem. ATA Spezifikation, um z.B. eigene Programme abzuspeichern. Eine zusätzliche Ethernet-Netzwerkkarte mit VGA, PS/2 Tastatur- und serieller TTL-COM für ein sep. LCD-Display ermöglicht einen vollkommen unabhängigen Host-Betrieb.


IDE - ATA Interface für HDD und CF-Karten
Datenblatt / Manual zur Karte

Kurzbeschreibung
Die IDE-Karte stellt die Verbindung zwischen der SEPIA-CPU und einer Speicherkarte als Wechselmedium her. Es können auch größere CF/SD-Karten (bsp. 2, 4 oder 16 GB) verwendet werden. Dabei sind jedoch nur max. 528 MB (netto 504 MB) mittels FAT16 Partition je Laufwerk adressierbar, welche sich wie folgt multiplizieren lässt: 1024 Cylinder * 63 Sectors * 16 Heads * 512 Byte. Die Mindestanforderungen sind jedoch: 255 Cylinder, 63 Sectors und 5 Heads. Da jedes BASIC-Programm immer mit 32KB als kompl. Speicherbild linear abgespeichert wird, können bei 255 low- und 255 high-Cylinder (nur bei EIDE) insgesamt 65280 Programme verwaltet werden. Die max. Anzahl der Verzeichnisse ist nur durch das Speichermedium selbst (CHS-Eintrag von Cylinder High) begrenzt. Programmnamen können bis zu 32 Zeichen enthalten. Im Directory werden zusätzlich Uhrzeit und Datum eingetragen (RTC-Karte muss vorhanden sein). Alle Programme werden ab Nr.1 durchnummeriert (Nummer = Cylinder-Low) und können über diese Nummer bearbeitet werden. Dies erhöht den Komfort bei der Dateiverwaltung und macht das Directory sehr übersichtlich. Die gesamte Kommunikation erfolgt über insgesamt 9 von 16 I/O-Adressen im unkomplizierten PIO-Mode mit 16-bit Zugriff. Über ein zusätzliches I/O-Register kann ein Soft-RESET das Device neu initialisieren, ohne einen echten RESET durchführen zu müssen. Mit diesem Interface lassen sich normale Datenträger gem. ATA verwalten. Es wurden mehrere Lochbilder zur Montage unterschiedlicher SD/CF-Adapter von verschiedenen Herstellern vorgesehen. Der zweite IDE-Steckplatz ist für ein weiteres Medium als Drive Nr.1 (Slave) vorgesehen. 

Mit diesem Interface wurden bereits mehrere Medien positiv getestet und freigegeben. Externe Laufwerke werden über die üblichen HDD-Standard-Kabel (40poliges 1:1 Flachbandkabel) direkt mit dem IDE-Interface verbunden. Da SEPIA lediglich + 5 Volt benötigt, müssen Festplatten mit +12 Volt Anschluss von einem DUAL-Netzteil versorgt werden. Insgesamt können zwei Basis-Adressen über den DIP- Schalter voreingestellt werden. Unser SEPIA-System unterstützt hardware-seitig max. zwei IDE-Karten mit insgesamt 4 Laufwerken: je 2x als Master und 2x Slave. DIP-Schalter 1=OFF und 2=ON adressiert IDE-Karte 0, DIP-Schalter 1=ON und 2 =ON adressiert IDE-Karte 1. Zwei LEDs auf der ALU-Frontplatte zeigen den Zugriff auf das Speichermedium an. Das SEPIA BIOS unterstützt intern jedoch nur ein Laufwerk als Master (IDE0-Stecker vorne) und ein Laufwerk als Slave (IDE1-Stecker hinten). Neben CF-Drives und normalen IDE-Festplatten können auch SD, IDE- Flash oder SSD-Festplatten verwendet werden, solange diese dem ATA-Standard mit PIO-Mode 0...6 entsprechen und FAT Formatiert sind. Empfehlenswert sind durchweg alle Industrial-CF-Speicherkarten der Fa. Transcend®, wie z.B. TS512MCF100I-P, da diese Performance Medien neben DMA ebenso den PIO-Mode und Auto-Detect Mode voll unterstützen. 

Erweiterungen mit IDE-Geräten
Wenn 2,5" Notebook IDE-Festplatten verwendet werden sollen, ist eine elektr.- mechanische Adaption mittels Trägerplatine notwendig. Die Stromversorgung erfolgt dazu über die Bus-Platine. Die Schnittstelle wird mit einem ca. 15cm langen 40pol. HDD-Kabel verbunden. Der Einschub hat eine Breite von 8TE (8x 5,08mm = 40,6mm) und eignet sich zum Einbau vor dem int. Bus-CPLD, da diese Lücke exakt 8TE beträgt. Möchte man anstatt einer Festplatte (nur als Master möglich) lieber eine SD-Memory Karte als Slave-Laufwerk verwenden, reichen bereits 4TE für den Einbau aus. (siehe Bild rechts)

Künftig werden noch zusätzliche 3HE-Einschubkarten zur Aufnahme von weiteren Festplatten angeboten. Diese mech. Adapter-Karten verwenden eine 1,5 mm dicke Aluminiumplatte anstatt der Leiterplatte und weisen verschiedene Lochbilder für div. Winkelbleche auf. Damit ist gewährleistet, daß auch künftige IDE SSD / CF / SD... Adapter von unterschiedlichen Herstellern in das System integriert werden können. Spezielle ALU-Frontblenden im typ. SEPIA-Design runden das Gesamtbild auf. Je nach DIN oder Kunden- anforderung werden für den industriegerechten Einbau entsprechende Zwischenelemente aus Gummi zur Schock- / Vibrationsdämpfung mit unterschiedlichen Shore-Härten verwendet. Da wir über eine hauseigene, programmierbare Vibrations-Testanlage (bis zu 25 kg Prüfgewicht) verfügen, können wir diese Prüfungen individuell vornehmen und entsprechend nach DIN u.a. verschiedenen Prüfschärfen im Vorfeld auch nach Kundenwunsch testen.
 

Jetzt auch mit SATA - Adapter
Der Zugriff auf SATA-Festplatten (z.B.: Seagate® Baracuda 7200.7) ist jetzt ebenso möglich, jedoch müssen Festplatte und IDE-Konverter den PIO-Mode auch wirklich unterstützen und slave-fähig sein. Ein Adapter der Firma Conrad® Electronic ist hierzu in der Lage. Bestellnummer: 974497 - 62. Die Stromversorgung muss jedoch von einem PC-Netzteil übernommen werden, da diese Festplatten zusätzlich 12 Volt benötigen. Weitere Infos zu SATA und IDE Konverter unter: http://www.topfield-europe.com...


(c) Foto: Fa. Conrad. IDE-Adapter mit SATA-Festplatte
CF-Karten und SD-Konverter
Zwei weitere IDE-Adapter konnten jetzt erfolgreich getestet werden. Gleiches gilt für den Einsatz mit SD- und CF-Card-Adaptern. Auch hier konnten zwei verschiedene IDE-Adapter mit SD-Karten problemlos genutzt werden. Positiv verlief ebenso ein Adaptertest der Fa. DELOCK, mit dem sämtliche CF/SD Speicherkarten auf Anhieb funktionierten. Zugriffsprobleme gibt es hingegen mit einem speziellen Konverter, welcher lediglich den DMA/UDMA Mode unterstützt. Dabei wurde festgestellt, dass nur jene Adapter betroffen sind, die eine besimmte Charge FC1306 Controller verwenden. Dieser IDE-Chip birgt offensichtlich noch einen Fehler in der Programmierung der CHS-Parameter. Da der Controller von SEPIA ausschließlich im PIO-Mode arbeitet (True IDE-Modus), werden Seicherkarten und Festplatten welche ausschließlich DMA oder UDMA bereitstellen, folglich nicht erkannt. Dies gilt auch für uralte Festplatten, die mit dem schnellen IDE-Timing von SEPIA nicht mithalten können. Die hier verwendeten Massenspeicher sollten min. 5 MB/s oder PIO-Mode 3, Wear Leveling, sowie die ECC-Fehlerkorrektur unterstützen z.Bsp.: CF150 von Transcend®. Da betagte 3.5" Zoll Festplatten sehr groß sind und viel Strom verbrauchen (extra +12 Volt Spannungsversorgung), Geräusche verursachen, anfällig für Head-Crashs sind und i.d.R. eine immense Hitze entwickeln, sollte man auf diese Technologie besser ganz verzichten, zumal der gemischte Betrieb von CF/SD und Festplatten auf Grund des verschiedenen Timings nicht empfehlenswert ist. Der kleine Temperaturbereich bei Festplatten von typ. 5...55 Grad Celsius ist ein weiterer Grund, diese Medien in der industriellen Automation nicht mehr zu verwenden. CF-,SD-Karten und Flash-Module sind in diesem Umfeld die bessere Wahl, da wesentlich schneller, relativ unempfindlich, leicht  austauschbar und stromsparend. Speicherkarten werden zudem für den erweiterten Temperaturbereich von -25(-40)°C bis +85°C angeboten.

Folgende Medien sind auf SEPIA uneingeschränkt einsetzbar:



(sowie weitere CF-/SD-Karten verschiedener Hersteller)
SEPIA inkl. HDD-OS
Flash-, CF- und SD-Karten werden im SEPIA Advanced-BASIC mit folgenden Befehlen unterstützt:

- DIR...... Directory anzeigen
- ERASE.... Programm löschen
- LOAD..... Programm laden
- LOADGO... Befehl läd über Nummer eine Datei und startet das Programm*
- SAVE..... Programm abspeichern
- RENAME... Dateiname umbenennen
- RESET.... Befehl stetzt die IDE-Schnittstelle und alle Drives zurück
- DRIVE0... 0 schaltet Drive auf Master um
- DRIVE1... 1 schaltet Drive auf Slave um
- DRIVES... Scan IDE-Ports, ob Master und Slave im System vorhanden sind
- DRIVET... Interner Test
- DRIVEP... Festplatte parken (sleep-mode)
- XROOT.... Eingabe gefolgt von Verzeichnisnummer (0..255)  0 = Root

* Mit LOADGO(x) können auch mehrere Dateien abwechselnd vom Medium geladen und gestartet werden. Somit lassen sich mehrere Programme über eine eigene Menuestruktur verwalten, oder ggf. auch größere Programme in mehrere, kleine Unterprogramme zerlegen, die dann je nach Bedarf nachgeladen werden.

Einfaches Programmierbeispiel:

100 REM Beispiel fuer LOADGO(&xx)
110 CLS : LOCATE 2,3
120 PRINT " Menue mit Unterprogrammen "
130 PRINT " 1 - MASTER-SLAVE          "
140 PRINT " 2 - ZIDE6                 "
150 PRINT " 3 - RELAIS TEST           "
200 :
210 INPUT W$
220 ON VAL(W$) GOTO 260,270,280
230 :
260 LOADGO(&06) : REM Starte Dateinummer
270 LOADGO(&04) : REM Starte Dateinummer
280 LOADGO(&15) : REM Starte Dateinummer

Im SEPIA-IDE-MENUE werden zusätzlich weitere Funktionen angeboten:

IDE Editor
- V... Laufwerk wechseln (Master / Slave umschalten)
- I... IDENTIFY (ASCII & Hex-Dump der Festplatteneinträge)
- M... MBR auslesen (Master-Boot-Record Hex-Dump lesen)
- E... Error/Status (CHS Werte, Error und Status-Register auslesen)
- X... Drive INIT
- Y... IDE-RESET
- Q... Sektor lesen, in RAM ablegen und anzeigen
- R... Sektoren lesen
- T... Sektoren schreiben
- O... Sektoren überschreiben
- D... Directory lesen
- J... Verzeichnisnummer? (neue Eingabe in Hex 00-FF)
- F... FORMAT (VORSICHT: aktuelles Verzeichnis formatieren)
- N... DIR-Einträge löschen und ändern
- L... Datei laden
- P... Programm starten
- S... Datei speichern 
- H... Hardcopy EIN/AUS
- Z... Zurück zum Debugger
<Esc> = Neustart, K = Kaltstart, W = Warmstart

Die BASIC-RAM-Bereiche und Programme in Maschinensprache können beliebig abgespeichert oder geladen werden. Die Directory-Struktur, welche auf FAT aufbaut, unterstützt je Medium insgesamt 255 Dateien, welche ab Cylinder 01 - aufsteigend - mit je 32 KB den gesamten RAM-Inhalt abspeichert. Damit belegt jedes BASIC- Programm (unabhängig seiner tatsächlichen Größe) einen, durchnummerierten Cylinder. Diese Methode bietet gleich mehrere Vorteile für den Anwender:

- keine Verschachtelung über mehrere Sektoren oder Cylinder hinweg (weniger Op-codes)
- linearer Dateiaufbau mit exaktem RAM-Speicherabbild
- einfache und schnelle Formatierung
- sehr kurze, gleichmäßige Speicher- und Ladeszeiten (mit CF/SD-Karten)
- keine Defragmentation nötig
- schnelle Directory-Ausgaben beim DIR-Befehl

Einstellbare Waitstates und Start-Up-Delay bei langsamen HDD Festplatten
SEPIA wurde für den Einsatz mit schnellen Medien optimiert. Damit, wenn man nur CF-/SD-Karten verwendet, keine unnötige Wartezeit beim Booten verbringt, ist die BootUp-Time jetzt mit einem DIP-Schalter (3) auf der IDE-Karte einstellbar. HDD-Festplatten müssen im Vergleich zu CF und SD-Karten erst auf Drehzahl kommen bevor man auf das Device zugreifen kann. Diese Zeit liegt je nach Speichermedium bei einigen Sekunden. Sie kann jedoch bei CF- o. SD-Karten entfallen, da hier keine mechanischen Teile bewegt werden müssen. Somit schaltet man auf der IDE-Karte bei Festplatten-Betrieb DIP-SW.3 auf "OFF".

SSD o.k. keine Probleme

HDD sehr langsam

SSD-Laufwerke (Solid State Drives) nutzen die Flash-Speichertechnologie und bieten hohe Übertragungsraten (Lese-/Schreibgeschwindigkeiten). Diese "Laufwerke" enthalten keine beweglichen Teile, sodass sie im laufenden Betrieb wenig Energie verbrauchen und geräuschlos arbeiten. Durch ihren Aufbau sind diese Medien recht stoß- und erschütterungsfest, sodass sie auch in problematischen Umgebungen (im Gegensatz zu herkömmlichen Festplatten) gut eingesetzt werden können.

Zur weiteren Diagnose wurden jetzt noch weitere Signale an das CPLD geführt und zur Abfrage auf Register 7Fh in das BIOS eingebunden. Mit DIP-SW3= OFF wird gleichzeitig der langsamste PIO-Mode 0 mit ~600ns Zykluszeit aktiviert. DIP-Schalter SW4 hat noch keine Verwendung. Die DIP-Schalter sind auf der IDE-Karte wie folgt festgelegt:

1=OFF/ON = Basisadresee 070h / 080h                 OFF = default
2=OFF/ON = Verwendung für werksinterne Diagnosen    ON  = default
3=OFF/ON = HDD BootUp-Time EIN / AUS                ON  = default
4=OFF/ON = z.b.V.                                   OFF = default

IDE mal ganz einfach: Diagnose mittels BASIC-Programm

Die "AUTOBAS"  Startdatei im Hauptverzeichnis
Eine Besonderheit kommt der ersten Datei auf dem Datenträger (Drive0) zu, denn sie kann ähnlich einer .bat Batch-Datei ein BASIC-Programm direkt nach einem RESET ausführen, ohne weitere Benutzereingaben zu tätigen. Dazu muss das Programm zwingend unter dem Namen AUTOBAS in Großbuchstaben als Datei 01 abgespeichert sein. SEPIA prüft beim Booten, ob diese Datei vorhanden ist. Falls ja, wird sie unmittelbar geladen und im BASIC-Interpreter gestartet. Das AUTOBAS Programm ermöglicht somit ein Wiederanlauf von Programmen, beispielsweise nach einem Stromausfall. Mit LOADGO können ebenso weitere Programme aus AUTOBAS heraus gestartet werden, sowie COM-Schnittstellen und I/O-Ports neu initialisiert werden. Bei der Nutzung von AUTOBAS gilt die Verwendung des WDC (WatchDog) zu berücksichtigen. Auch hier wird bei  einem RESET die AUTOBAS-Datei automatisch geladen und gestartet. Da in AUTOBAS der gesamte Befehlsvorrat des BASIC-Interpreters verwendet werden kann, sind ebenso Portokollausgaben z.B. auf einem Drucker möglich, welcher dann Zeit, Datum, sowie andere Angaben zu diesem Ereignis festhält.



Ethernet-Netzwerk, VGA, PS/2- und LCD-Interface
Datenblatt / Manual zur Karte

Kurzbeschreibung
Das Netzwerk-Interface beinhaltet mehrere Funktionen auf einer Karte. Die Kommunikation erfolgt über zwei serielle COM-Schnittstellen, die wahlweise kombiniert werden können. So kann die PS/2-Tastaturschnittstelle mit dem int./ext. LCD-Anschluss beispielsweise als COM1 verschaltet werden, wenn zuvor auf der CPU-Karte die COM1 (Konsole) zur COM3 entsprechend umgeleitet wurde. Damit wird SEPIA automatisch als Host-PC nutzbar. Wer diese Funktion lieber über den Ethernet-Anschluss nutzen möchte, kann dies durch umschalten des DIP-Schalters ebenfalls nach o.g. Muster zuweisen. Die serielle Schnittstelle steht in diesem Fall als virtueller COM Port auf einem Windows-PC bereit (per Redirect-Software), so dass die Daten über Ethernet getunnelt werden können, ohne die Anwendung anpassen zu müssen.

VGA-Anschluss
Nutzt man den VGA-Anschluss, kann die Programmierung direkt am SEPIA-System ohne weitere Hilfsmittel erfolgen (Host-Mode auf COM1). Die Textausgabe erfolgt mit 80 x 36 Zeichen bei 640 x 480 Pixel, so dass jeder herkömmliche VGA-Monitor mit 15pol.HD-Anschluss verwendet werden kann. Für die Terminalemulation wird ein eigener Prozessor verwendet, damit der Hauptprozessor vollständig entlastet wird und ein schnelles positionieren von Zeichen oder scrollen von Textblöcken erfolgt. Zur Programmierung der jeweils 10 Textfarben (im VGA-Mode) wurden folgende BASIC-Befehle erweitert:

XTCOLOR V,H    ; Textfarben 0..9 setzen, V = Vordergrund, H = Hintergrund
XRSTCOL        ; Alle Farben rücksetzen, org. Boot-Ausgabe Weiß auf Blau
XINVERT        ; Textfarben V und H invertieren (rücksetzen mit XRSTCOL)

Tastatur-Anschluss für Standard PC-Tastaturen
Als Tastatur-Prozessor dient ein ATMEL® ATTiny85 Chip, der die spez. PS/2 - Scancodes in einen seriellen Datenstrom mit 115.2 kBd nach ASCII umwandelt. Der umfangreiche ASCII-Zeichensatz unterstützt sowohl deutsche Umlaute, als auch spez. Zeichen aus dem US / Engl.- Zeichensatz (bsp.: \ [ ] ~ ), sowie vorbelegte F-Tasten mit häufig genutzten Befehlen für die schnelle Eingabe der BASIC-Programmierung. Tastaturen mit USB-Anschluss können nur über entsprechende Adapter angeschlossen werden, wenn sie lt. Hersteller als "Combo Tastatur" ausgeschrieben sind. Diese Tastaturen unterstützen demnach beide Modi: USB und PS/2. Sie können über passive USB-Adapter an PS/2-Anschlüssen direkt betrieben werden.

Einfaches Programmierbeispiel:

100 REM Tastatur ASCII-Zeichencode anzeigen
110 CLS
120 LOCATE 2,2
130 B = ASC(INKEY$)
140 PRINT "ZEICHEN "; CHR$(B); "  DEZ.:";B
150 IF B = 5 THEN STOP ELSE GOTO 130

LCD-Anschluss
In Gegenrichtung zur Tastatur werden Bildschirmausgaben der Konsole u.a. auf TxD als TTL-Signal erzeugt, um ein serielles LCD Grafik-Display zu steuern. Die Baudrate beträgt 115.200 kBaud. Ein Steckverbinder mit 2,0 mm Rastermaß ermöglicht den Anschluss über Flachbandkabel, um int. oder ext. Anzeigen zu bedienen. Die Displays werden demnächst in unterschiedlichen Größen angeboten. Kleinere Displays können fest in die Frontplatte des 19" Systems integriert werden. Hierzu empfiehlt sich der Einsatz von 84 TE Baugruppenträger.

VGA & LCD im Parallelbetrieb 
Nutzt man den VGA-Anschluss zur direkten BASIC-Programmierung im Host-Betrieb, kann das LCD-Display parallel betrieben werden. Die Programmierung des Display erfolgt i.d.R. mittels spezieller ESC-Sequenzen.

Ethernet-Anschluss (mit Treiber für Windows® XP, Vista, 7)
Der Ethernet -Netzwerkanschluss (LAN) unterstützt 10Base-T und 100Base-TX mit "Auto-Sensing" über einen RJ45 Connector als virtuellen Port, sodass die serielle COM-Verbindung weit entfernt über ein Netzwerk (bsp. Intranet) stattfinden kann (Fernwirken). Der hier verwendete Server nutzt die Protokolle TCP/IP, UDP/IP, ARP, ICMP, SNMP, TFTP, Telnet, DHCP, BOOTP, HTTP, und AutoIP auf Basis eines SoC Network - Processors (enhanced 16-bit, x86 CPU). Der Netz-Zugang kann mit einem Passwort, oder optional mit einer 256-bit Verschlüsselung nach AES Rijndael Encryption geschützt werden. Die Konfiguration erfolgt direkt über einen Web-Browser und einer mitgelieferten Windows-Treiber-Software für den Host-Rechner, der mit SEPIA über die Netzwerkleitung als Client verbunden werden soll. Da die individuelle Zuweisung der COM-Schnittstellen durch den Anwender erfolgt, kann die Ethernet-Anbindung als Programmierschnittstelle, oder als Standard-Port mit MODEM-Funktion verwendet werden. Denkbar sind ebenso spezielle Konfigurationen, die gleichzeitig beide Kommunikationswege in einem System nutzen. Damit werden beispielsweise alle Ein.- und Ausgaben der Konsole via Ethernet als "Programmable Remote I/O" fernsteuerbar. Ein BASIC-Programm kann ebenso als "Macro" eingesetzt werden. Mit dieser simplen Methode lassen sich dann ganz individuell neue Sub-Befehle für die Kommunikation zwischen Ethernet und beispielsweise einer Relais-Karte herstellen. 

Einfaches Programmierbeispiel:

100 DIM A$(80)        : REM Ethernet -> Konsole
110 A$ = XSTRIN$(6)   : REM lese String auf Ethernet-Anschluss COM6
120 Print A$          : REM nach <CR> den String auf Konsole (COM1) ausgeben
- - -
100 DIM A$(10)        : REM Konsole -> Ethernet
110 A$ = "Hallo..."   : REM Zeichenkette nach A$
120 XSTROUT(6),A$     : REM String in A$ auf COM6 Ethernet-Anschluss senden

Vernetzung mehrerer SEPIA-Einheiten (max. 255)
Sollen mehrere SEPIA-Einheiten über einen Windows-PC-Rechner verwaltet werden, so kann jede Ethernet- Schnittstelle als COM-Port in andere Programmiersprachen bequem eingebunden werden, da die serielle Kommunikation wie eine RS232 anzusprechen gilt. Damit Windows den jeweiligen COM-Port erkennt, erfolgt der Datenverkehr über einen Re-Director-Treiber. Hiermit lassen sich bis zu 255 virtuelle COM-Ports (abzügl. der bereits verwendeten COM-Schnittstellen) im System erweitern. Wenn man bedenkt, dass SEPIA in der maximalen Ausbaustufe bereits 352 digitale Kanäle bietet, werden selbst Großprojekte mit Tausenden Kanälen plötzlich ganz klein. Den Treiber kann man beim Hersteller Lantronix runterladen: http://www.lantronix.com

Info zum XPort® Modul
XPort® Konfiguration

Zu XPort® kann man die IP-Adresse fest, oder automatisch zuordnen lassen. Alle Eingaben (betreffend dem XPort-Modul) werden über eine HTML-Maske mit dem Bowser als Editor vorgenommen. Hier lassen sich auch Sub-Net-Adresse, UDP/TCP-Port und weitere Parameter zur Netzwerkverbindung bequem verändern. Ebenso kann die Eingabe über ein Passwort gegen unbefugten Zugriff geschützt werden. XPort ist zusätzlich in der Lage, eine EMail abzusetzen. Hierzu müssen dann noch weitere Angaben zum Provider eingetragen werden.
Weitere Info, siehe: http://www.heise.de/ct/artikel/Bruecken-bauen-289414.html



1 MB EPROM / SRAM - Erweiterung
Datenblatt / Manual zur Karte

Kurzbeschreibung
Die MEM-Karte erweitert den Memory-Bereich der CPU-Karte für speicherintensive Anwendungen, oder um andere Betriebssysteme einzubinden. Dazu besitzt diese Karte ein Boot-EPROM vom Typ. 27256/27512 bzw. wahlweise einen FLASH-Speicher. Als Speicher-Memory können EPROMs von 128k x 8 bis max. 512k x 8 und SRAMs von 32k x 8 bis 512k x 8 verwendet werden. Zur Unterscheidung werden Steckbrücken verwendet, die der aktuellen Speicherbestückung entsprechen. DIP-Schalter teilen der CPU-Karte auf Anfrage die schaltereigene Grundeinstellung mit (I/O-READ auf 0003). Die maximale Ausbaustufe beträgt insgesamt 1MB.

Urlader - Bootstrap 
Um den Bootloader zu aktivieren, wird DIP-SW4 auf der CPU-Karte auf OFF gestellt und der 2.te DIP-SW1 (auf der Memory-Karte) auf ON. Damit sind die Vorkehrungen für das automatische Hochladen des Monitors bzw. BIOS gegeben, welcher anschließend die Umschaltung des SRAM (von 8000-FFFF nach 0000-FFFF) vornimmt und dabei das Boot- EPROM bei Zugriff auf Adresse 07FFF abschaltet. Diese einfache Maßnahme ermöglicht ein Nachladen von Programmen, oder später einmal von anderen Betriebssystemen wie CP/M... in den Hauptspeicher. Da für diesen Betrieb ein neues, angepasstes BIOS notwendig ist, steht diese Option zur Zeit leider noch nicht zur Verfügung. Die Hardware ist dennoch vorbereitet.

Speicher mit 64k-Segmenten 
Damit das SEPIA-BASIC auf den erweiterten Speicher zugreifen kann, wurde zusätzlich eine kleine MMU in das CPLD integriert. Sie ermöglicht eine Segmentadressierung mit 16k-Pages zu je vier Blöcken pro 64k Segment. Die Speicherverwaltung wird über die I/O-Adresse 0000h gesteuert. Hier wurden nun neben den Adressleitungen A16...A19 und BANKEN ein PG0-Bit und PG1-Bit für das Mapping erweitert, welche vier 16k-Pages je nach Bedarf umschaltet. Der Grund für diese Maßnahme war, dass man größere Datenmengen (z.B. Messdaten) nicht in das eigene BASIC-RAM ablegt, sondern in einen Schattenspeicher der genug Platz bietet. Damit der Anwender sich nicht um die Umschaltung der einzelnen Pages kümmern muss, wurden im Advanced-BASIC weitere Befehle integriert: „XPOKE“ und „XPEEK“. Hiermit lassen sich direkt 64k Schreib- und Leseoperationen je Segment komfortabel handhaben. Die Segementumschaltung erfolgt zuvor über den Befehl „XSEG 1...15“.

Einfaches Programmierbeispiel:

100 CLS : LOCATE 2,2
110 PRINT "SEPIA SRAM & MEM-CHECK 32/512/1MB "
120 PRINT "================================= "
130 PRINT
140 POKE (&F000),&A5
150 B = PEEK(&F000)
160 IF B = (&A5) THEN PRINT "32 KB Programmspeicher o.k."
170 PRINT
200 :
210 FOR X = 1 TO 15
220 XSEG(X)
230 XPOKE (&F000),&A5
240 B = XPEEK(&F000)
250 IF B = (&A5) THEN PRINT "Test 64k Segment ";X
260 NEXT X
 



COM - LPT- RTC - WDC - Erweiterung
Datenblatt / Manual zur Karte

RS232 COM-Port Kurzbeschreibung
Diese Karte ist eine Schnittstellenerweiterung mit zweiter, serieller COM, zweiter LPT und einem RTC-Chip für Uhrzeit und Datum. Die serielle COM ist hier als Host-Schnittstelle (9pol. 'M' Stecker) ausgeführt, damit z.B. externe Messgeräte über ein Programm direkt angesteuert und einbezogen werden können. Insgesamt lassen sich vier  Baudraten unabhängig von der CPU-Karte über den DIP-Schalter "1" und "2" auf der Karte (zunächst) voreinstellen. Da wir in unserem System keine Treiber verwenden, kann durch einfaches "Überladen" der UART-Register die Start-Grundinitialisierung der jeweiligen COM-Schnittstelle jeder Zeit wieder neu initialisiert werden. So können Baudraten von 50 Baud bis 115,2 kBaud, andere Wortlängen, sowie Stoppbits und auch Handshake-Leitungen bedarfsgerecht angepasst werden. Die Teiler-Faktoren und Line-Control-Register können dazu aus dem Datenblatt vom 16C550 entnommen werden. 

Datenblatt zum 16C550

Da bei SEPIA kein plug-and-pray zum Einsatz kommt, werden dazu die vorgegebenen Hardware-Adressen direkt aus der I/O-Map verwendet. Die Basisadressen der COM-Ports befinden sich im Sepia-System unter 0x10h, 0x20h, 0x40h und 0x50h... Da man die Adressierung der COM-Schnittstellen durch die Einstellung der DIP-Schalter vornimmt, können die Ports auch untereinander vertauscht werden. Dies macht insbesonders Sinn, wenn man beispielsweise das System als Host umkonfiguriert, oder Ein- und Ausgaben über andere COM-Schnittstellen vornehmen möchte (bsp. PC-Taststatur, Grafik-Display, RS485...).

Einfaches Programmierbeispiel mit XCIN und XCOUT:

100 REM Daten von COM2 empfangen und als Echo zuruecksenden
105 :
110 Z = XCIN(2) : REM ein Zeichen als Byte von COM-Port Nr.2 empfangen
120 IF Z > 0 THEN PRINT CHR$(Z); : XCOUT(2),Z
130 IF Z = 13 THEN PRINT : REM LF bei CR ausgeben
140 GOTO 110

Echtzeit-Uhr mit Datum
Die RTC (Real-Time-Clock) besitzt einen 3,6 Volt Akku als Puffer, der während der Betriebsdauer aufgeladen wird. Die Jahresgrenze wird lt. Datenblatt des EPSON-Chip mit 2099 angegeben. Der RTC-Chip besitzt bereits einen integrierten Uhrenquarz mit einer sehr geringen Zeitdrift von nur 10ppm (Ta 25 C). Neben der Zeit- und Datum-Funktion verfügt er über eine 12 / 24h-Uhr mit Schaltjahrfunktion, sowie eine  30 Sekunden Nachstell- Funktion. Durch seine sehr geringe Stromaufnahme von nur max. 10µA (CMOS-Technik) ist eine sehr lange Backup-Bereitschaftüber den Akku gewährleistet.

Datenblatt zum Uhrenchip

Beim Booten des Rechners wird (ähnlich wie unter DOS) eine Datum-Zeitangabe direkt am Anfang auf die Konsole ausgegeben. Uhrzeit und Datum können im Debugger-Menue mit der Taste "U" manuell eingegeben bzw. verändert werden. Die RTC ist für die IDE-Karte notwendig, damit Dateien mit Datum und Zeitstempel angelegt werden können. Mit dem Befehl: XGETIME und XGEDATE können jetzt die aktuelle Uhrzeit und das Datum unter BASIC direkt ausgegeben werden.

Einfaches Programmierbeispiel:

100 REM Uhrzeit & Datum ausgeben
110 CLS
120 LOCATE 10,10
130 PRINT "Uhrzeit "; : XGETIME :?
140 :
150 LOCATE 30,10
160 PRINT "Datum "; : XGEDATE :?

WatchDog-Überwachung
Genau genommen sollte eine WatchDog-Funktion überflüssig sein, denn gut programmierte Software stürzt in der Regel nicht ab. Doch in der komplexen Realität gibt es mit unter Zustände, die eine WatchDog-Funktion unentbehrlich macht und im Fehlerfall das Schlimmste verhindern kann. Die neue Karte verfügt daher über ein steuerbares Relais mit einer klassischen Time-Out-Watchdog-Funktion.

Abhängig vom Master-Clock wird dazu ein Frequenzteiler mittels Vergleicher im CPLD vorprogrammiert, um verschiedene Time-Out Zeitfenster zu bestimmen. Ein weiteres Kontroll-Register schaltet die WatchDog- Funktion ein bzw. aus. Danach muss auf einem I/O-Port ein regelmäßiger Zugriff durch das Hauptprogramm erfolgen. Unterbleibt der Zugriff innerhalb des programmierten Zeitfensters (bsp. Softwarefehler), schaltet das Relais den RESET-Vorgang ein, damit der Rechner automatisch starten kann. Dabei schaltet das Relais mittels Ruhestrom als Öffner (Fail-Safe). Der anschließende RESET-Vorgang setzt die Watch-Dog-Funktion wieder zurück in eine neutrale Ausgangsposition (Rückfallebene), bis erneut eine gewollte Freigabe durch das Programm erfolgt. Der Relaiskontakt kann zudem für eine Weiterschaltung (bsp. als Folgerelais, Alarmkontakt, Meldelinie..) genutzt werden. Die RESET-Leitung (zur CPU) kann zusätzlich durch einen Jumper je nach Bedarf unterbrochen werden, so dass der Relaisausgang für andere Zwecke nutzbar ist.

Die gesamte WDC-Programmierung erfolgt über drei I/O-Register: OUT &2C,x (0..15) setzt 16 verschiedene Zeitfenster für den Time-out, OUT &2D,1 erzeugt die Freigabe der WDC-Funktion, und mit OUT &2F,0 wird ein Re-Trigger programmiert, welcher vor Ablauf des Zeitfensters erfolgen muss, damit kein RESET ausgelöst wird. Das Relais schaltet mit einer Haltedauer von ca. 1 Sekunde (bei 8 MHz CPU-Takt) und löscht dabei das Time-out-Flag im CPLD, sodass keine Rückkopplung mit der RESET-Logik entsteht. Die RESET-Schaltung der CPU-Karte übernimmt anschließend alle Aufgaben der Neuinitialisierung (Warmstart). Der WDC-Befehl OUT &2D,0 schaltet die Funktion manuell ab und setzt das Time-Out-Flag wieder auf Null, so dass man gezielt Routinen mit - oder - ohne WDC-Unterstützung programmieren kann. Bei einer gewollten Unterbrechung durch den Anwender (Tastenkombination "CTRL-E") wird über das BIOS das WDC-Flag ebenfalls rückgesetzt, da sonst bei jeder Umprogrammierung des BASIC-Quellcodes ein unnötiger CPU-RESET durchgeführt würde.

Einfaches Programmierbeispiel:

100 REM WDC-TEST (Watch-Dog)
110 OUT (&2C),6  : REM Timeout Zeitbasis waehlen 0..15
120 OUT (&2D),1  : REM 1=Enable 0=Disable WDC
130 :
140 OUT (&2F),0  : REM Re-Trigger vor Timeout
150 :
160 REM Hier steht eingekapseltes Hauptprogramm
170 XDELAY(2000) : REM simuliert die Programmdauer
180 :
190 GOTO 140     : REM WDC-Schleife
 



Master-Clock Bus-Terminierung Diagnose-Adapter
Datenblatt / Manual zur Karte

Kurzbeschreibung
Diese Karte ist in zwei verschiedenen Längen lieferbar. Die kurze Variante eigent sich zum Einbau hinter einem Display oder als Diagnosekarte auf einem Testadapter. Ein abgesicherter Steckverbinder kann zur Entnahme oder Einspeisung der +5 Volt Versorgungsspannung dienen. Zwei TTL-Quarz-Oszillatoren werden am CPLD mit verschiedenen Teilern per DIP-Schalter (SW1) für den Bus-Takt vorprogrammiert und erzeugen so wahlweise Frequenzen zwischen 0,3 und 20 - 32 (max. 40) MHz. An einem zweiten DIP-Schalter werden weitere Teiler bis in den Hz-Bereich eingestellt, um beispielsweise die Einzelschrittverfolgung von kleinen Assembler-Routinen taktgenau zu beobachten. Am NMI und IRQ-Eingang können weitere Taster für Interrupt- ereignisse angeschlossen werden. Diverse Service-LEDs dienen zur einfachen, visuellen Diagnose.

Alarm-Kontakt
Die lange Version (mit Frontplatte) verfügt über weitere Fail- und Diagnose-Funktionen. Zusätzlich sind zwei ICs integriert, welche Clock- und Power-Fail permanent überwachen. Über eine 9pol. Sub-D-Buchse dient ein potentialfreier UM-Kontakt zur Signal-/Alarmausgabe, um ggf. Sicherheitsmaßnahmen bei angeschlossenen Geräten zu ermöglichen (zb. Fail-Save). Diese Buchse dient gleichzeitig als Eingang für das Clear-Signal, um den Alarmkontakt rückzusetzen, ohne dass das Programm unterbrochen wird. Per RESET-Taster ist der Alarmspeicher ebenfalls rücksetzbar, jedoch muss das Programm anschließend wieder neu gestartet werden. Eine zusätzliche Sicherheitsschaltung im CPLD prüft das Alarm-Relais kontinuierlich über den Schleifenstrom. Bei einer Unterbrechung der Relaisspule wird die Störung über eine blinkende, rote LED angezeigt. Diese Meldung erzeugt noch keinen NMI. 

Terminierung
Da die Quelle (CPU-Karte) über leistungsstarke Treiber-ICs verfügt, können steckbare Widerstand-Arrays den gesamten Adress.- Daten.- und Steuerbus wirkungsvoll terminieren, so dass stabile Pegel selbst bei hohen Taktraten ohne Reflektionen erzeugt werden. Die hier verwendete Schaltung nennt sich Thevenin-Terminierung. Dieses Verfahren ist zwar etwas aufwendiger (da Doppelterminierung), zeigt jedoch erhebliche Vorteile im gesamten Übertragungsverhalten gegenüber herkömmlichen Terminierungen. Dies setzt jedoch voraus, dass Quelle, sowie Senke, in einer bestimmten Anordnung verbleiben. Somit sind die Bus-Steckplätze 0 (für CPU) und 12 (für CLK-Karte) fest reserviert.

LED Anzeigen & Taster-Funktionen
Insgesamt zeigen 10 LEDs den Betriebszustand von SEPIA an. Zwei Taster ermöglichen einen manuellen Reset, IRQ, Single-Step-Clock, Alarm-Test oder NMI- Eingaben. Die jeweilige Funktion wird dazu über einen Jumper auf der Karte vorgegeben. Ein IDC-Stecker bietet zusätzlich eine Anschlussmöglichkeit, Clock-Fail, Power- Fail, sowie zwei weitere Test-Pins vom CPLD, intern für andere Aufgaben zu nutzen. Die beiden Taster befinden sich aus Sicherheitsgründen hinter der Frontplatte und können nur durch ein kleines Loch mit einem spitzen Gegenstand (< 3mm Durchmesser) bedient werden. An der 9pol. SUB-D Buchse kann zusätzlich eine externe Schaltung mit versorgt werden. Die hierfür benötigte +5 Volt Betriebsspannung ist dazu über eine 0,5 Ampere Polyswitch-Sicherung (selbstrückstellend) auf der Karte abgesichert.

Die LED-Anzeigen sind (von links nach rechts) wie folgt beschaltet:

PWR (leuchtet nur wenn beide Fail-ICs nicht ansprechen und 5 Volt am Bus anliegen)
CLK (zeigt synchrones Flackern, wenn das Taktsignal an der CPU anliegt)
RST (erlischt kurz, wenn ein RESET erfolgt (bsp. WDC), oder RESET-Taster gedrückt wird)
RAM (A15 flackert, wenn die Speicheradressierung von ROM auf RAM umschaltet) 

INT (Kontrolle des Interrupt-Tasters, oder kurzer Blink wenn IRQ vom Bus kommt)
NMI (Kontrolle des NMI-Tasters, oder kuzer Blink wenn NMI-Signal vom Bus kommt)

PFL (leuchtet dauerhaft, wenn Spannung kurz unterbrochen wurde, oder <4,65 Volt ist)
CFL (leuchtet, wenn Spannung oder Taktleitung unterbrochen wird, blinkt bei Notbetrieb)
HLT (leuchtet dauerhaft, wenn das CPU-HALT-Signal im Fehlerfall ausgegeben wurde)
ALM (Oder-Verknüpfung von Power-Fail / Clock-Fail / HALT, schaltet ALARM-Kontakt)
    oder blinkt (alleine) permanent, falls das ALARM-Relais defekt ist (Spulenunterbrechung)

EN ISO 13849-1
Damit Hersteller, welche SEPIA an einer Maschine anschließen und programmieren möchten auch die DIN bzw. EN ISO13849-1 Norm wirklich einhalten können, wurden bereits Maßnahmen zur Sicherheit in die Hardware vorintegriert. Die wichtigste Schnittstelle ist somit ein Sammel-Alarm (potentialfreier Meldekontakt), dessen Kontrollanzeige über eine rote LEDs erfolgt, sowie die Möglichkeit, ausgegebene Schaltbefehle (bsp. Relais-Kontakt EIN) über den rückgeführten Zweitkontakt per Software abzufragen. Alle weiteren Maßnahmen dienen zur eigenen Systemsicherheit, um im Fehlerfall entsprechend zu reagieren, Gegenmaßnahmen zu ergreifen (WatchDog, Power-, Clock-Fail..); oder zumindest unmissverständlich sichtbar für den Benutzer anzuzeigen. Damit wurde von unserer Seite aus bereits ein großer Beitrag zur Risikominderung unternommen, die der Hersteller für seine Gefährdungssituation bzw. dessen Beurteilung zur Berichtserstellung verwenden kann. Neben qualitativen Anforderungen an die Gestaltung von Sicherheitssystemen ist es ohnehin erforderlich, auch systematische Fehler zu vermeiden. Aus diesem Grund verwendet SEPIA kein fremdes Betriebssystem und ist mit etlichen Zusatzfunktionen versehen, welche u.a. die Programmierung betreffen. Dennoch können Fehler nie zu 100% vermieden werden, selbst wenn die Entwicklung und Einarbeitung von noch so vielen Standards und  Sicherheitsmaßnahmen einbezogen werden. Bei sicherheitsgerichteten Steuerungen sollte daher die Schaltung von Antrieben immer über zwei Schütze mit zwangsgeführten Kontakten erfolgen, sowie durch eine manuelle Unterbrechung (NOT-AUS) oder einen Todmannschalter jederzeit Systemunabhängig in einen sicheren Zustand überführt werden können. Einige Hersteller von Sensoren, Aktoren, Logik- und Teilsystemen bieten zu ihren Produkten einen Safety Calculator an (Software), damit die Bestimmung des Sicherheitslevels von Maschinen und Anlagen zu einem Kinderspiel wird. Auf diese Hilfmittel sollte man schon aus eigenem Interesse vor dem Hintergrund der Rechtssicherheit bei der Planung und Umsetzung von Anlagen nicht verzichten.

Link zu Hintergrundinformationen: siehe auch http://www.zvei.org
EN ISO13849 https://www.zvei.org/fileadmin/user_upload/Fachverbaende
Funk-Sicherheit https://www.zvei.org/fileadmin/user_upload/Fachverbaende
Sichere-Automation https://www.zvei.org/fileadmin/user_upload/Fachverbaende

Power-Fail und Brown-out
Eine kurze Unterbrechung der Hauptversorgungspannung kann jeden Rechner zum Absturz bringen, oder aber
zur Weiterverarbeitung mit verfälschten Werten führen. Desshalb ist diese Funktion für echte IPCs eine Pflicht. Die Brown-out Detection ermöglicht die permanente Überwachung der internen +5 Volt Spannungsversorgung und kann bei einem kurzzeitigen Spannungseinbruch von wenigen Millisekunden auf eine mögliche Vorstufe eines Fehlers in der Stromversorgung aufmerksam machen. Wird eine Schwellspannung von +4,65 Volt unterschritten, wird beispielsweise ein NMI-Interrupt ausgeführt. Um eine hohe Sicherheit hinsichtlich der Fehlerbearbeitung zu erreichen, wurde die PFL-Schaltung doppelt ausgelegt. Erst wenn beide ICs die gleiche Fehlermeldung erzeugen, wird das Signal ausgelöst, um weitere Maßnahmen einzuleiten. Die NMI-Leitung wird bei Alarm durch DIP-SW2 Schalter Nr.4 = ON erst vom Anwender freigegeben (disable/enable).

ALARM  - Zusatzfunktion bei WDC-Time-Out
Bei DIP-SW2 Nr.3 = ON wird der WatchDog ebenfalls auf das Alarm-Relais zugeschaltet. Zur besseren Unterscheidung der Meldelinien bleiben alle roten LEDs an, bis die Quitierung durch den Anwender mit der Löschtaste (Pin.8 + 3 auf 9pol.Sub-D-Buchse) erfolgt. Diese Funktion wird dauerhaft gespeichert und arbeitet unabhägig vom RESET. Spätestens hier wird klar, warum dieser Industrierechner "SEPIA" genannt wird und damit über einzigartige Sicherheitsmerkmale verfügt, welche weit über die von üblichen Embedded-PCs hinaus gehen. SEPIA ist zudem ein offenes System und es gibt fast nichts, was der Anwender nicht programmieren, einstellen, oder für seine Bedürfnisse entsprechend umstellen oder anpassen kann.

Permanente Power-Fail und Clock-Fail Überwachung
Damit nicht fälschlicherweise ein Alarm bei Zuschalten der Versorgungsspannung (power-up-sequence) erfolgt, startet im CPLD eine kurze Zeitverzögerung, sodass während dieser Phase noch kein Fail-Signal ausgewertet wird. Alle Fail-Signale und Sicherheitsabfragen wurden im CPLD durch mehrere Statemachines realisiert. Daher arbeitet die Fail-Überwachung, Ein- und Ausgabe, sowie der Relais- Alarmkontakt CPU- unabhängig, wenn die Freigabe nach der Startunterdrückung einmal erfolgt ist. Die Fail-Überwachung des Clock-Signals wird als Schleife über das gesamte System vorgenommen. So auch bei einem Defekt /Totalausfall des Takt- Oszillators, sowie der CPU-Karte hinsichtlich der Taktaufbereitung (oder Entfernen aus dem System), sowie einem generellen Kurzschluss auf dem Bus. Bei allen diesen Szenarien würde die Takt-Schleife unterbrochen und entsprechend als Fail-Signal für das Alarm-Relais ausgewertet, da die CLK-Karte unabhänig von der CPU-Karte arbeitet.

Clock Notbetrieb
Diese spezielle Sicherheitsfunktion schaltet auf einen langsamen Quarzoszillator, wenn der Hauptoszillator ausfällt bzw. ein Clock-Fail erfasst wurde. Somit ist ein Notbetrieb mit der halben Taktferquenz möglich. Aus Gründen der Sicherheit sollte das Programm jedoch neu geladen werden. Den Notbetrieb erkennt man an der blinkenden CFL-LED, die abwechselnd mit der halben Taktfrequenz der CLK-LED aufleuchtet. Das ALARM- Relais wird im Notbetrieb ebenfalls geschaltet. Diese spezielle Sicherheitsfunktion wird jedoch erst mit dem linken DIP-Schalter Nr.1 = OFF aktiviert (default).

Absurde Situationen wurden ebenso berücksichtigt:
Im sehr unwahrscheinlichen Fall, dass ein Quarzoszillatorausfall gleichzeitig mit einem Power-Fail einhergeht, werden Power-Fail LED aktiv und PWR-LED passiv. Das ALARM-Relais wird ebenfalls geschaltet. Danach folgt ein Shut-Down des Rechners ohne Fail-Save. Geht die Spannung wieder über +4,7 Volt, wird die PWR-LED wieder aktiv. Dabei bleiben PFL- und Alarm-LED beide noch gespeichert, bis der Anwender diese über die Sub-D-Buchse manuell löscht und einen RESET auslöst. Zuvor sollten zur Sicherheit die Baugruppen und insbesonders die Netzversorgung jedoch einer Prüfung unterzogen werden. Ab einer Spannung unter +4,2 Volt sollte der Rechner keinesfalls mehr betrieben werden, da die Signalintegrität stark gefährdet ist. Häufen sich zu viele Fehler (beispiel: CFL leuchtet, der Clock-Notbetrieb ist aktiviert, und WDC löst aus), fährt der Rechner automatisch in einen sicheren Shut-Down-Mode mit Dauer-Reset. Dabei werden alle roten LEDs sowie das ALARM-Relais eingeschaltet, die Reset-LED und CLK-LED werden dazu ausgeschaltet. Danach lässt sich der Rechner nur noch starten, wenn die Versorgungsspannung für ein paar Sekunden unterbrochen wird und ein manueller RESET erfolgt. Sollte dabei der Hauptoszillator nicht funktionieren, verbleibt der Rechner weiterhin im Shut-Down-Mode. Als vorübergehende Gegenmaßnahme kann in diesem speziellen Fall, auf den zweiten Oszillator (DIP-SW1=ON) von Hand umgeschaltet werden, um nach einem RESET eine Art "Notbetrieb" zwangsweise herzustellen, bis Bauteile bzw. Komponenten ausgetauscht wurden. Erst, wenn alle Karten einwandfrei arbeiten, ist ein sicherer Betrieb möglich. Dazu müssen alle roten LEDs aus sein. 

CLK und Fail DIP-Schalter

Schalter-Einstellungen (SW1 links):
1 = OFF Hauptoszillator (unten)
1 = ON Zweitoszillator (oben)
2 = OFF Teiler / 0
2 = ON Teiler  / 2
3 = OFF Teiler / 0
3 = ON Teiler  / 3
4 = OFF Teiler / 0
4 = ON Teiler  / 6

Schalter-Einstellungen (SW2 rechts):
1 = OFF Teiler / 0
1 = ON Teiler  / 4194240
2 = OFF Teiler / 0
2 = ON Teiler  / 16776960
3 = OFF kein Alarm-Relais bei Time-Out von WDC
3 = ON löst Alarm-Relais aus, wenn WDC
4 = OFF kein NMI, wenn PFL
4 = ON löst NMI aus, wenn PFL

Die Frequenzteiler können ebenso miteinander kombiniert werden. Somit lassen sich für die Programmanalyse sehr lange Taktzeiten für den CPU-Einzelschritt einstellen. Diese Funktion ist besonders für den erfahrenen Entwickler interessant, da sich Bus-Signale mit einem Oszilloskope, sowie ein Maschinenprogramm Schritt für Schritt beobachten lässt.



RL8 Relais-Baugruppe mit 8x 2 Ampere UM-Kontakt
Funktion:
Die 8-fach Relais-Baugruppe verfügt über 2 Amp. Doppelkontakte. Pro Relais ist ein UM- Kontakt über einen 25 pol. Sub-D Stecker an der Frontplatte zugängig. Der zweite Relais-Kontakt wird der Schaltung zur Erhöhung der Eigensicherheit wieder rückgeführt, sodass der Schließer-Zustand per Software Bit-weise auf der gleichen I/O-Adresse von jedem Relais wieder zurückgelesen werden kann. Zur zusätzlichen Kontolle dient eine I/O-LED rechts neben der Power-LED, die bei jedem OUT- Befehl eingeschaltet, sowie bei jedem IN-Befehl wieder ausgeschaltet wird. Damit lassen sich I/O-Zugriffe auf das Relais-Register optisch mitverfolgen. Die Adresslage der Karte ist variabel einstellbar. Dazu wird ein Byte aus 255 möglichen I/O-Adressen für den Zugriff mit DIP-Schalter (DIP-SW1) ausgewählt.

RESET, WatchDog, Rückfallebene:
Ein weiterer DIP-Schalter (DIP-SW2) entscheidet mit Schalter Nr.1, ob der System-RESET die Relais-Ausgabe löschen soll, oder der aktuelle Registerinhalt unabhängig vom RESET beibehalten werden soll. Dies kann bei manchen Anwendungen sehr wichtig sein, die nicht durch einen Rechner-Reset verändert, oder unterbrochen werden dürfen. Die gleiche Möglichkeit besteht ebenfalls, bei einem Time-Out vom WDC (WatchDog) den 8-Bit Registerinhalt zu löschen und damit die Relais in eine ursprünglich stromlose Ausgangsposition zu versetzen. Da der Rechner selbst nach einem kompletten Reset den Relais-Zustand der Karte wieder einlesen kann, sind sehr sichere Applikationen realisierbar die sonst nur teuren High-End-Systemen vorbehalten waren.

Isolierung:
Alle Relais sind auf dieser Karte bis zu 48 Volt einsetzbar und somit unterhalb der Niederspannungsrichtlinie anwendbar. Sämtliche Relais sind zum Rechner hin ausreichend mit 1,5mm Leiterbahnabstand (Kriechstrecke) galvanisch getrennt. Dennoch wird die Isolierung konservativ als (FELV-Isolierung) bezeichnet. Die kleinste Kriechstrecke (Kontakt-zu-Metallschirm) stellt somit der 25-polige D-Sub Steckverbinder selbst dar. Alle Schaltkontakte wurden unmittelbar 1:1, ohne weitere Schaltungsmaßnahmen (wie Filter oder Snubber), an die D-Sub Steckleiste geführt.

Technische Daten zum Relais:

- Spulenspannung 5 Volt
- 2x UM-Kontakt, getrennt
- Kontaktmaterial AgNi/Au (5µm)
- Id 3 Ampere Dauerstrom
- Is 2 Ampere Schaltstrom
- Un 125 VAC Nennspannung
- Us 250 VAC Schaltspannung
- AC1/AC15 (230VAC) max.125/25VA
- 1,5 kV Spannungsfestigkeit
- Schaltzyklen 100000000
- Anprech.-/Rückfallzeit 6.0/2.0 ms 
- Relais-Schutzart RT III
- Umgebungstemperatur -40...+85 C.
- Zulassungen UL, CSA, GOST
- Prüfspannung 1 kV Spule-Kontakt

Datenblatt / Manual zur Karte
Relais-Herstellerdaten
Datenblatt D-SUB Steckverbinder
 

Kompatibilität:
Die 8-fach Relais-Karte ist ebenso auf anderen 80er-Systemen mit ECB-Bus einsetzbar. Falls erforderlich kann dazu ein Jumper die Interruptschleife für ältere Systeme mit IEI auf IEO brücken. Alle acht Relais, Power-On und die I/O- Freigabe werden über insgesamt 10 LEDs (Aufbau ähnlich wie CLK-Karte) komfortabel angezeigt. Die Programmierung erfolgt direkt in Maschinensprache, oder mit Advanced-BASIC über INP-/OUT-Befehle.

Einfaches Programmierbeispiel:

100 REM RELAIS-TEST mit XDELAY (Lauflicht)
110 FOR I = 0 TO 7     : REM Relais 1..8 in Schleife testen
120 POW2 = 2 ^ I
130 :
140 OUT &B0,INT(POW2)  : REM Relais gesetzt
150 PRINT "SET RELAIS Nr.:";I+1
160 :
170 XDELAY(500)        : REM 100ms Verzoegern (bei 20MHz CPU)
180 B = INP(&B0)       : REM Kontakt-Zustand zuruecklesen
190 :
200 IF INT(POW2) <> B THEN PRINT "Fehler bei Relais: ";B
210 NEXT I
220 XDELAY(1000)
230 OUT &B0,0          : REM Alle Relais AUS
 



OI8 Opto-Baugruppe mit 8x Opto-Input 24V
Eingangsschutz:
Die 8-fach Opto-Baugruppe verfügt über bipolare Eingänge, welche untereinander und zum Rechner isoliert sind. Jeder Optokoppler ist zudem mit einem wirksamen Spannungsschutz ausgestattet. Die im Spannungsteiler vorgeschalteten TVS-Dioden vom Typ. P6KE6.8CA bieten somit Schutz vor ESD und Überspannung.

Echtzeit-Interrupt:
Ein mit 20 MHz betriebener ATMEGA 88-PU Prozessor greift die Eingänge vor dem CPLD ab und kann bei Zustandsänderung zusätzlich einen Interrupt für Echtzeitanwendungen über den Bus auslösen. Diese Option wird mit dem kl. DIP-Schalter 4 = ON aktiviert. Da der Sub-Prozessor in dieser Applikation lediglich zu 3..4% genutzt wird, sind noch weitaus umfangreichere Programmierungen möglich.

Perfekte Kontrolle:
Alle Eingänge werden wie bei der RL8 komfortabel über LEDs angezeigt. Dazu werden die Signale im CPLD intern zwischengespeichert und anschließend erst zur LED-Anzeige gebracht, damit eine sichere, optische Gegenkontolle der erfassten Signalzustände möglich ist. Ein interner Vergleicher prüft alle eingehenden High- Pegel mit der Anzeige auf Übereinstimmung. Bei Zustandsänderung blinkt die zugehörige Kanal-LED so lange, bis der Rechner mit einem Lesebefehl den Zwischenspeicher übernommen hat. Der Lesevorgang wird durch eine weitere LED angezeigt. Somit ist eine zusätzliche Kontolle zur Übergabe des Registers an die Rechner- CPU gegeben. Der hohe Aufwand an Kontollmöglichkeiten bietet dem Anwender erhebliche Vorteile bei der Programmierung, da jedes einzelne Bit, ob high oder low, während der Erfassung mitverfolgt werden kann.

Hohe Isolation:
Optional verfügt die Karte über einen DC/DC-Wandler zur Hilfsspannungserzeugung. Diese Versorgung dient zur direkten Beschaltung von passiven Gebern (bsp. Taster...) mit passiven Optokoppler-Eingängen, ohne eine weitere Spannungsquelle installieren zu müssen. Das Layout der Optokopplereingangsbeschaltung wurde betreffend Kriechstrecken auf größtmögliche Abstände ausgelegt. Die kleinste Kriechstrecke stellt somit der 25-polige D-Sub Steckverbinder (Kontakt-zu-Metallschirm) selbst dar. Ein Grund mehr, bei hoher Isolation keine Micro- oder Nano- Stecker einzusetzen, wenn zudem eine gute EMV-Verträglichkeit bei gleichzeitig hohen Steckzyklen als stabile Verbindung gefordert wird. Gemäß Herstellerangaben liegt die Prüfspannung für den Sub Steckverbinder, sowie die des DC/DC-Wandlers, bei 1000 V. Zur weiteren Risikominderung sind alle spannungssensiblen Bauteile im isolierten Bereich neben hoher Temperaturbeständigkeit UL approbiert.

Technische Daten zur Karte:

- 8 Optokoppler-Eingänge 24 Volt DC
- Einzeln galvanisch getrennt
- Bipolare Polarität
- 100µs Zykulszeit
- 25pol. D-Sub-Steckverbindung
- Komfortable LED-Anzeige
- Echtzeit Interrupt zuschaltbar
- Eingangsschutz mit TVS-Dioden
- ATMEGA 88 als Sub-Prozessor
- Hohe Isolation durch großzügiges Layout
- Port: 1 I/O-Byte von 255 Adressen 
- Option: DC/DC-Wandler
- UL zertifizierte Bauteile -> siehe Text

Techn. Dokumentation
Datenblatt Optokoppler TLP620
Datenblatt TVS P6KE6.8CA
Datenblatt D-SUB Steckverbinder

Kompatibilität:
Die 8-fach Opto-In-Karte ist ebenso auf anderen 80er-Systemen mit ECB-Bus einsetzbar. Falls erforderlich kann dazu ein Jumper die Interruptschleife für ältere Systeme mit IEI auf IEO brücken, oder eine Beschaltung über den zusätzlichen ATMEL® Sub-Prozessor stattfinden (IEI/IEO sind z.Zt. jedoch nicht implementiert). Die Programmierung erfolgt direkt in Maschinensprache, oder mit Advanced-BASIC über INP-/OUT-Befehle.

UL steht für Underwriters Laboratories Inc.®. Sie ist eine der weltweit führenden Organisationen zur Prüfung und Zertifizierung im Bereich Produktsicherheit.

Einfaches Programmierbeispiel:

110 O = INP(&B8) : REM Register-Eingang lesen
120 :
130 PRINT "OPTO-INPUT HEX = "; HEX$(O)
140 :
150 FOR I = 8 TO 0 STEP -1
160 POW2 = 2 ^ I
170 IF INT(O AND POW2)=INT(POW2) THEN Bin$=Bin$+"1" ELSE Bin$=Bin$+"0" 
180 NEXT I
190 PRINT "OPTO-INPUT BIN = "; Bin$

Spannungen > 30 Volt können über ein Koppel-Relais (bsp.: Fa. FINDER Serie 49...) eingeschleift werden.

  Koppel-Relais für 230 Volt-Eingang
 



AD1  16 Kanal - 16 Bit Messkarte
Funktion:
Die AD1-Messkarte dient zur Erfassung analoger Messwerte mit 16-Bit Auflösung. Die A/D-Karte wird in mehreren Genauigkeitsklassen und Geschwindigkeiten angeboten. Je nach Bestückung kann die Messkarte Spannung oder Strom (0...20mA) messen. Dazu sind entsprechende Strom-Shunts vorgesehen, welche auch als Spannungsteiler beschaltet werden können. Als high-speed, low-power 16-bit A/D converter dient ein Wandler vom Typ AD976 (Hersteller: Analog-Device®). 

Programmierung:
Diese analoge Messkarte benötigt für die gesamte Programmierung nur zwei Bytes im I/O-Adressraum. Um hohe Abtastraten zu erzielen, wurde das Advanced-BASIC mit entsprechenden X-Befehlen erweitert. Die R/C (read-convert) Steuerung, EOC (end-of-conversion) Abfrage, sowie low- und high-byte Bildung werden bereits in Maschinensprache intern vorverarbeitet, so dass ein fertiger 16 Bit Wert an eine BASIC-Variable übergeben werden kann. Zur Messung sind daher nur zwei Befehle nötig:

XSETAD1(Port),Kanal     ... stellt den analogen Messkanal ein
D = XGETAD1(Port)        ... gibt das Messergebnis als 16 Bit-Wert an eine Variable zurück
 

Technische Daten:

- 16 Bit A/D-Wandler
- ADC mit 100 oder 200 kHz Abtastrate
- 16 Kanäle, single-ended, bipolar
- Verstärker für +/- 10, 5, 2.5, 3.3 und 2 V
- Eingangsterminierung mit R-Arrays
- TZ Schutzbeschaltung Option
- Peek-Filter über Jumper zuschaltbar
- Gain / Offset für Messverstärker & ADC
- Eigene DC/DC Spannungsaufbereitung
- EMV-gerechtes Schaltungsdesign
- Zugriffsanzeige über LED
- Anschluss: D-SUB 37pol. Buchse
- Beschaltung wie PCI-AD16 (für BNC-Box)
- Adresse über DIP-Schalter einstellbar
- geringe Stromaufnahme
- +5 V Hilfsspannungsausgang 0,5 Amp.
- EOC oder INT Verarbeitung möglich
- Statemachine mit Echtzeit-Latch im CPLD

Datenblatt / Manual zur Karte
Datenblatt AD976
Datenblatt Multiplexer
 

Einfaches Programmierbeispiel:

100 REM Messwert auf Kanal 1 von A/D-Karte einlesen 
110 REM Basisadresse 90 Hex, Messbereich +/- 10 Volt
120 :
130 XSETAD1(&91),1     : REM A/D Messkanal einstellen
140 D = XGETAD1(&90)   : REM Wandlung 16BIT Digits nach D
150 :
160 V = (D * 0.0003051804379) - 10.000  : REM analogen Messwert berechnen
170 PRINT "Volt =   "; : PRINT USING"##.####"; V 
 



CNT 2-Kanal 24BIT Counter-Messkarte

Realtime Up/Down-Zählerkarte für Pulse, Winkelgeber und inkrementale Längenmeßstäbe

Funktion:
Die CNT-Messkarte dient der Erfassung von dig. Impulsen. Beide Zähler können Pulsraten von 0 bis 10 MHz in Echtzeit verarbeiten. Die Impulserfassung erfolgt intern über schnelle Quadraturencoder. Damit keine Impulse ausbleiben werden 3x 8-Bit Latch plus ein Sign-Bit in einem vierten Register immer zwischengespeichert. Die Zähler arbeiten vollkommen unabhängig, können jedoch über einen Triggereingang ebenso synchron betrieben werden. Dadurch können beliebig viele Karten parallel betrieben werden, um beispielsweise die Ist-Position bei Längenmessungen in Mehrachsensystemen ohne Zeitjitter zu erfassen. Die anschließende Verarbeitung wird mit absoluten Zählerständen vorgenommen. Die Unterscheidung zwischen Single und Differential-Ended erfolgt über die Steckerbelegung, sowie dem Entfernen der beiden RS422 ICs. Jede Eingangsleitung ist zusätzlich mit einem EMV-Filter gegen hochfrequente Störungen abgeblockt.

Auf Grund der int. 20 MHz Zeitbasis ist eine Impulserfassung (up/down-count) bis 10 MHz möglich. Im 4-fach Inkremental-Mode beträgt die Abtrastrate 5 MHz. Diese Einstellung wird beispielsweise für digitale Drehgeber und Encoder (mit diff. TTL/CMOS-Signal) oder inkrementale Längenmeßstäbe an Mehrachsen-Systeme und CNC-Maschinen benötigt. 

Ein Zähler-Reset kann synchron oder asynchron erfolgen, sowie über die internen Counter als Zählerstand vorprogrammiert werden. Je Zähler werden vier I/O-Register verwendet. Die Zwischenspeicherung erfolgt bei Lesen des Low-Bytes. Während der Datenübertragung der Registerinhalte, zählt der Counter im Hintergrund weiter, damit kein Verlust an der augenblicklichen Position des Gebers entsteht. Über einen DIP-Schalter werden feste Parameter zu jedem Counter separat eingestellt. Die I/O-Basisadresse ist einstellbar. Dazu wird die Adresslage für den Port-Zugriff mit DIP-Schalter DIP-SW1 ausgewählt. 

Datenblatt / Manual zur Karte

Ein abgesicherter Spannungsausgang (0,5 Ampere über selbstrückstellbare Polyswitch) dient zur direkten Versorgung von 5 Volt TTL-Geber und Sensoren, sodass keine weiteren Komponenten benötigt werden.

  PolySwitchTM

Technische Daten:

- Digitale Zwei-Kanal 24 Bit + 1 Vorzeichen Impuls-Zählerkarte
- DC...10 MHz Echtzeit-Signalerfassung mit int. Latch-Zwischenspeicher (2x 4 Register)
- Geeignet für alle Phi0/90 TTL-Signale von Dreh-/Winkelgeber und Längenmaßstäben
- Erhöhte Störfestigkeit durch Differential-Eingänge (ähnlich RS422)
- Wahlweise auch Single-Ended-Eingänge möglich (TTL)
- 400ns Filter (schützt permanent gegen Signalprellen)
- Signalauswertung 1 - 2 - 4 fach Puls (Quadraturencoder) über DIP-Schalter vorwählbar
- Vorgeschaltetes EMI-Filter für jedes E/A-Signal
- Ext. Trigger-Eingang (TTL pull-up, GND aktiv) für synchrone Zählerübernahme
- Ext. Enable-Eingang (TTL pull-up, GND aktiv) zur Freigabe des ext. Trigger-Signals
- D-Sub 37pol. Buchse (gleiche Beschaltung wie PCI-Counter Karte)
- Power- und Zugriffsanzeige über LEDs
- Hilfsspannungsausgang + 5Volt über Polyswitch-Sicherung (0,5 Ampere) abgesichert
- Kartenadresse über DIP-Schalter einstellbar
- Polling-Betrieb oder INT-Verarbeitung (Option)
- großes CPLD 1032E (skalierbar für weitere Bus-Anpassungen) 
- Temperaturbereich Betrieb: 0...70 (Economy-Serie), Industrie: -25...+85 Grad Celsius
  (andere Temperaturbereiche auf Anfrage, ggf. Erprobung und Burn-in in Klimakammer) 
- rel. Luftfeuchtigkeit während Betrieb: < 95%, nicht kondensierend
- EMV-gerechtes Schaltungsdesign für echte Industrieanwendungen 
- wahlweise Fertigung in bleifrei RoHS-konform, oder mit Pb (Sn63Pb37)
- Kartengröße: 100 x 160 mm (für 19“ System, 3HE 4TE)
- Einbaulage: vertikal oder horizontal (im Bus-Betrieb vertikal)

Einfaches Programmierbeispiel:

100 REM Zaehler 1 auslesen
110 A = INP(&A0) : REM Low, Zugriff speichert gleichzeitig alle Register
120 B = INP(&A1) : REM Medium
130 C = INP(&A2) : REM High 
140 D = INP(&A3) : REM hier nur Vorzeichen-Bit in Data Bit 0
150 :
160 X = A + (B*256) + (C*65535) : REM absoluten Zählerstand berechnen
170 PRINT "Alle Register: "
180 PRINT A;B;C;D
190 PRINT "Counter 1 = ";X
 



E32 Optokoppler-Input Karte 32-Kanal
Funktion:
Diese Opto-In Karte besitzt 32 isolierte Eingänge, welche in vier Gruppen (= separate Massepfade) zu je 8 Bit vom Rechner galvanisch getrennt arbeiten. Die I/O-Basisadresse ist einstellbar. Dazu wird die Adresslage für den Port-Zugriff mit DIP-Schalter DIP-SW1 ausgewählt. Insgesamt benötigt die Karte vier Register. Werkseitig verfügt das Interface über eine 37pol. D-Sub Buchse. Die Basisisolierung entspricht (gemäß DIN 0100) der typischen FELV-Spannung. Die hier verwendeten Optokoppler vom Typ. TLP620 arbeiten bipolar (+/- oder -/+). Damit besitzen die Eingänge keine Vorzugspolarität. Andere Eingangsspannungen (5...30 Volt) können durch Anpassung der Vorwiderstände (8-fach Resistor-Pack) individuell vorgenommen werden. Dazu sind alle DIL- Bauteile leicht zugängig und mit Präzisionsfassungen gesockelt.
Datenblatt / Manual zur Karte

Technische Daten:
- 32 digitale Eingänge, in vier Gruppen zu 8 Bit
- Galvanische Trennung: FELV-isoliert
- max. Potentialspannung 200 Volt DC (<1 min.)
- Eingang: typ. 24 Volt DC bipolar  (anpassbar über R-Array)
- Eingangsstrom je Optokoppler < 5 mA bei 24 Volt (Rv = 4k7)
- Datenübertragung DC...10 kHz
- Zugriffsanzeige über LED (Port-I/O)
- Anschluss: D-SUB 37pol. Buchse  (auf Wunsch Stecker)
- I/O-Adresse über DIP-Schalter einstellbar
- Großes CPLD für weitere Optionen (bsp. Interrupt-Timer)

  Datenblatt Optokoppler TLP620

Einfaches Programmierbeispiel:

100 REM Opto-Kanal 1..32 einlesen (vier 8-Bit Register) 
120 CLS : LOCATE 2,4 
140 : 
150 A = INP(&B8) 
160 B = INP(&B9) 
170 C = INP(&BA) 
180 D = INP(&BB) 
190 : 
200 PRINT "1. BYTE INP = ";A 
210 PRINT "2. BYTE INP = ";B 
220 PRINT "3. BYTE INP = ";C 
230 PRINT "4. BYTE INP = ";D

Damit die VDE-Vorschriften eingehalten werden, müssen bei höheren Spannungen > 30 Volt, beispielsweise Koppel-Relais der Fa. FINDER (Serie 49.xxx) über eine 24 Volt Quelle eingeschleift werden.

  Koppel-Relais für 230 Volt-Eingang
 



A32 Optokoppler-Output Karte 32-Kanal
Funktion:
Diese Opto-Output Karte besitzt 32 isolierte Ausgänge, welche in 4 Gruppen (= separate Massepfade) zu je 8 Bit vom Rechner galvanisch getrennt arbeiten. Die I/O-Basisadresse ist einstellbar. Dazu wird die Adresslage für den Port-Zugriff mit DIP-Schalter DIP-SW1 entsprechend ausgewählt. Insgesamt benötigt die Karte vier Register. Jedes 8-bit-Register dient gleichzeitig als Zwischenspeicher, so dass erst durch „überschreiben“ des Bytes ein neuer Wert für das jeweilige Register auf den Ausgang übertragen wird. Werkseitig verfügt das Interface über eine 37pol. D-Sub Buchse. Die Basisisolierung entspricht (gemäß DIN 0100) der typischen FELV-Spannung. Es stehen drei verschiedene Kartenvarianten zur Wahl: P- oder N-schaltend, sowie Photo- MOS Relais bis 350 mA  pro Kanal. Es sind auch Mischbestückungen mit P, N und Photo-MOS möglich. Durch Verwendung einer invertierten Logik mit Freigabe-FF (erster Kartenzugriff), werden keine undefinierten Pegelzustände während der Power-Up- und Reset-Phase erzeugt.

Option: Ein WatchDog-Reset versetzt alle Ausgänge in eine neutrale Ausgangssituation, wie man sie nach dem Einschalten des Rechners vorfindet (alle Ausgänge = OFF).

Die Programmierung erfolgt direkt in Maschinensprache, oder mit Advanced-BASIC über INP-/OUT-Befehle.
 
Technische Daten:

- 32 digitale Ausgänge, in vier Gruppen zu 8 Bit
- Zwischenspeicher: 4x 8 Bit Latch-Register
- Galvanische Trennung: FELV-isoliert
- max. Potentialspannung 200 Volt DC (<1 min.)
- Schaltspannung 5...24 Volt DC unipolar 
- max. Schaltspannung 30 Volt DC
- Negative Logik (definierter Power-Up Zustand)
- max. Strom je Optokoppler: 20 mA (P)
- P-Optokoppler: ILD610-3
- max. Strom je Optokoppler: 100 mA (N)
- N-Optokoppler: TLP627-4
- Datenübertragung DC...10 kHz
- Zugriffsanzeige über LED (Port I/O)
- I/O-Adresse über DIP-Schalter einstellbar
- Option: Taktoszillator für eigenen WatchDog
- Option: Reset + shut-down (per DIP-Schalter)
- Option: Photo-MOS-Schalter bis 350 mA
- Anschluss: D-SUB 37pol. Buchse
  (auf Wunsch auch mit Stecker lieferbar)

Datenblatt / Manual zur Karte
  Datenblatt Optokoppler TLP627

Einfaches Programmierbeispiel:

100 REM Ausgabe Opto-Kanal (1. Register)
110 X = 128               : REM setzte Bit 7 (0x80h) 
120 OUT (&BC), 255-X      : REM Output

Zur Schaltung hoher Spannungen und Lasten werden optische Relais der Fa. CRYDOMTM empfohlen.

  CRYDOM AC Relais
  CRYDOM CW Relais



DA1 Analog-Output Karte 2 / 4 Kanal
Funktion:
Die DA1 Karte bietet je nach Bestückung wahlweise zwei oder vier D/A-Kanäle mit je 12 Bit Auflösung an. Je nach Referenz-Chip (REF01 / REF02) und Jumper-Einstellung können Ausgangsspannungen von +/- 10 Volt, 0...10 Volt, oder +/- 5 Volt, 0...5 Volt erzeugt werden. Die Wandler arbeiten intern mit Latch-Zwischenspeicher, so dass alle Kanäle auch zeitgleich übergeben werden können. Die Grundeinstellung uni. / bipolar erfolgt für jeden Wandler-Baustein getrennt. Da bei dieser Karte Dual-ICs verwendet werden (zwei Wandler in einem DIP- Gehäuse), gilt die Einstellung immer paarweise. 

Die I/O-Basisadresse ist einstellbar. Dazu wird die Adresslage für den Port-Zugriff mit DIP-Schalter DIP-SW1 ausgewählt. Insgesamt benötigt die Karte 8 Register. Zwei Lese-Register dienen zur Übergabe der neuen DAC-Werte, sowie einem schaltbaren Ausgang, welcher während der RESET-Phase abgeschaltet bleibt (disable), um keine ungewollten Spannungszustände zu erzeugen. Alle I/O-Kartenzugriffe werden durch eine LED zusätzlich angezeigt. Werkseitig verfügt das Interface über eine 9pol. D-Sub Buchse. 

Die Programmierung erfolgt direkt in Maschinensprache, oder mit Advanced-BASIC über INP-/OUT-Befehle.
 
 Technische Daten:

- 2 oder 4 analoge Ausgänge, je nach Variante
- 12 Bit Auflösung, siehe Datenblatt 
- Vout +/- 10, 0...10 o. +/- 5, 0...5 V, je nach REF
- Output über Buffer Op-Amp., max. 5 mA Last
- Zwischenspeicher mit DAC Latch-Register 
- DAC Wandler-Rate, min. 8µs, typisch 10µs 
- Ausgänge mit EMI-Filter
- Ausgangsbuffer auf Präzisionsfassung gesockelt
- Output min. 10 Sekunden kurzschlussfest
- Referenz-GAIN über Spindeltrimmer einstellbar
- Spannungsaufbereitung mittels DC/DC-Wandler
- Zugriffsanzeige über LED (Port I/O)
- Power-LED prüft gleichzeitig DC/DC-Wandler
- I/O-Adresse über DIP-Schalter einstellbar
- Anschluss: D-SUB 9pol. Buchse

Datenblatt / Manual zur Karte
DAC-Wandler (2-fach) AD7237

DAC-Referenz wahlweise 10 oder 5 Volt:
REF1: REF102
REF2: REF02

Einfaches Programmierbeispiel:

100 REM Grundinitialisierung
110 REM Bipolar-Mode alle DAC-Kanäle 0 Volt 
120 XDAC(&800),&98    : REM setze Wert auf Kanal 1 
130 XDAC(&800),&9A    : REM setze Wert auf Kanal 2 
140 XDAC(&800),&9C    : REM setze Wert auf Kanal 3 
150 XDAC(&800),&9E    : REM setze Wert auf Kanal 4 
160 XDASET(&98)       : REM DAC Latch & Output Freigabe

...

100 REM Kanal 1 und Kanal 2 gleichzeitig programmieren
110 XDAC(&0A00),&98   : REM setze +2,5 Volt auf Kanal 1 
120 XDAC(&0FFF),&9A   : REM setze +10  Volt auf Kanal 2 
130 XDASET(&98)       : REM DAC Latch & Output Freigabe
 


Power Netzteil-Karte (wide input range)
Zuverlässige Spannungsversorgung für störungsfreien Betrieb:

Dieser Spannungswandler basiert auf einem weitbereich-DC/DC-Konverter und ist in versch. Leitungsklassen für unterschiedliche Ausbaustufen verfügbar. Die Spannungsversorgung erfolgt direkt über Front-Einschübe mit  Eingangsspannungen von +12 (KFZ), +24, +48, bis zu +72 Volt DC. Die Karte birgt zusätzlich eine getrennte Spannungsüberwachung (Power-Fail), eine galvanische Trennung, Verpolungsschutz, ESD-Erdungspunkt,
Output-Spannungsregler, EMI-Filter, Temperatur- und Varistor-Überspannungsschutz. Die Versorgung erfolgt über Standard- Tragschienennetzteil, Netzteil mit UPS, Tischnetzteil, oder mittels Akku/Batterie-Betrieb.

Weitere Merkmale sind:

- LED- Anzeigen für Power-In (grün) und Fuse-fail (rot)
- Lastfreier Ein/Aus-Schalter über Remote-Ctrl.-Eingang am DC/DC-Wandler 
- Kurze Leiterplatte (nur 130mm) für dahinterliegende Kabelmontagen (zB. IDE) 
- Sicherer Wiederanlauf nach Spannungsunterbrechung
- Sichere Trennung, Aufbau gem. PELV DIN_VDE 0100-410

Ein Frontseitiger Schutzleiteranschluss dient zur Erdung (für Chassis-Potentialausgleich) und gleichzeitig als ESD-Schutz. Das Layout wurde für zwei verschiedene DC/DC-Wandler ausgelegt. Somit kann die Schaltung je nach Bedarf mit 25, 30, 40, 50 oder 60 Watt Wandler bestückt werden.


Foto: PW2 mit Uin 24 Volt, 60 Watt, Uout 5 Volt 12 Ampere
Techn. Dokumentation

Technische Daten:
Eingangsspannung: 12 / 24 / 48 / 72 Volt DC je nach Type
Ausgangsspannung: 5 Volt DC (+/- 0,03%/C bei 0...50 Grad)
Spannungsregler: 10 Gang Spindeltrimmer, Regelbereich typ. 4,95 - 5,15 Volt
Ausgangsstrom: max. 5 / 6 / 8 / 10 / 12 Ampere je nach Type
Leistungsklasse: 25 / 30 / 40 / 50 / 60 Watt je nach Type
Leerlaufstrom: typ. 8 mA @ 24 Volt DC, damit < 0,2 Watt für ErP-Ready
Anzeige: 2 LEDs, für 1x POWER-IN und 1x ERROR (Fuse fail)
Sicherheit: Fail-Out Störmeldung, optokoppler isoliert, open-collector N-schaltend
Sicherung: Standardsicherung 5 x 20mm
Output int. Anschluss: 4 pol. Phoenix-Stecker mit Sense (bis max. 10 Ampere)
Output int. Anschluss: M4 Schrauben und 6,3mm Flachstecker, für hohe Ströme
Input ext. Front-Anschluss: 4 pol. Phoenix-Stecker, verriegelbar über Schrauben
Schutzleiter ESD Erdungspunkt über HF-Drossel, 1MOhm // 1nF Chassis<>GND

Weitere Angaben zum DC/DC-Wandler SDM30
- Kurzschlussfest
- Kurzfristig min. 105% overload
- min. 1000 Volt Isolation
- Betriebstemperatur: 0...70 max. -25...+85 Grad Celsius*
- Case Temperatur DC/DC-Wandler: max. 90 / 105 Grad*
- Rel. Luftfeuchte: 0...95%
- EMV Filter zur Einhaltung EN55022 (CISPR22) FCC Class B
* je nach Version "Economy" oder "Heavy" Industrial

DC/DC-Wandler Typ: SDM30 (25 Watt)

Techn. Daten zum 4pol. POWER-Stecker

Weitere Info zum Steckergehäuse unter:
http://eshop.phoenixcontact.de/phoenix...



 
Empfohlenes Schaltnetzteil bei Netzbetrieb:
GS60A24-P1J-SNT

- ~240 VAC Universaleingang 90..264 V (47..63Hz)
- Ausgangsspannung: 24 Volt DC
- max. Strom: 2,5 Ampere, 60 Watt Leistung
- Eingangsstecker C14 (EN60320-1)
- Schutz gegen Kurzschluss und Überlastung
- Schutz gegen Überspannung
- Isolationsklasse I
- Overload max. 105-150% rated power
- niedrige Leerlaufleistung
- Netzteil erfüllt EU Richtlinie ErP-2
- EMC gem. EN55022 class B, 
  EN61000-3-2,3, FCC Part 15,
  EN61000-4-2,3,4,5,6,8,11 level A

Datenblatt zum Schaltnetzteil

oder alternativ für die DIN Hutschienenmontage:
 
STEP POWER von Phoenix Contact
24 Volt  2.5 Ampere Schaltschrank-Netzteil

Nenneingangsspannung 100 V AC ... 240 V AC
Frequenzbereich AC 45 Hz ... 65 Hz
Stromaufnahme ca. 0,4 A (230 V AC)
Einschaltstromstoß < 15 A (typisch)
Netzausfallüberbrückung > 100 ms (230 V AC)
Eingangssicherung 3,15 A (träge, intern)
Zulässige Vorsicherung B6, B10, B16
Schutzbenennung Transientenüberspannungsschutz
Schutzschaltung/-Bauteil Varistor
Nennausgangsspannung 24 V DC ±1 %
Einstellbereich 22,5 V DC ... 29,5 V DC
Ausgangsstrom 2,5 A (-25 °C ... 55 °C)
2,75 A (-25 °C ... 40 °C dauerhaft)
4,4 A (maximaler Ausgangsstrom)
Derating 55 °C ... 70 °C (2,5 %/K)
Restwelligkeit < 80 mVSS (20 MHz)
Verlustleistung Leerlauf maximal < 0,7 W
Verlustleistung Nennlast maximal 9,9 W
 

STEP POWER: Die kompakten Stromversorgungen der neuen STEP POWER-Generation eignen sich aufgrund ihrer Bauform speziell für Installationsverteiler und flache Bedienpulte. Die Netzteile sind mit 24 V DC Ausgangsspannung in unterschiedlichen Leistungsklassen und Baubreiten sowie den Sonderspannungen 5, 12, 15 und 48 V DC verfügbar. Mit ihrem hohen Wirkungsgrad und den geringen Stand-by-Verlusten wird laut Hersteller eine hohe Energieeffizienz erzielt.

Datenblatt und Approbationen


UL steht für Underwriters Laboratories Inc.®. Sie ist eine der weltweit führenden Organisationen zur Prüfung und Zertifizierung im Bereich Produktsicherheit.




Kundenspezifische Produkte, Kundenbetreuung und Projektsupport:
Für spezielle Anwendungsanforderungen entwickeln wir kundenspezifische Produkte nach Maß.
Teilen Sie uns dazu einfach Ihre Wünsche mit - wir entwickeln und fertigen SEPIA-Baugruppen bereits ab ein Stück.

Sie möchten eine Vorführung?  Kein Problem. Rufen Sie uns einfach an: 02235 - 76707

Verbraucherinformation gem. Einheitenverordnung:
2,5" (Zoll) entsprechen 6,35cm und 3,5" (Zoll) entsprechen 8,89cm
4TE entsprechen 20,32mm und 8TE entsprechen demnach 40,64mm
3HE = 133,35mm (Außenmaß von Baugruppenträger, nicht Frontplatte)
19" (Zoll) entsprechen 482,6mm und 63TE (x 5,08) sind demnach 320,04mm
Formel: 1 Zoll = 0,0254 Meter, 1TE = 5,08mm, 1HE = 44,45 mm
"HE" steht für Höhen-Einheiten, "TE" steht für Teil-Einheiten

Danksagung
An dieser Stelle möchte ich mich ganz herzlich für die tatkrätige Hilfe
und Mitarbeit von Herrn Dr. Hans Hehl bedanken.
http://www.hehlhans.de


SD® is Trademark by SanDisk®.
Digital Research®, Centronics®, Intel®, Microsoft®, Z80® und Zilog® sind eingetragene Marken ihrer Hersteller.


KOLTER ELECTRONIC ist nicht für die Inhalte fremder Seiten verantwortlich.
Es gelten ausschließlich die AGB der Firma KOLTER ELECTRONIC.
Für die Richtigkeit der Angaben wird keine Gewähr übernommen.
Alle Preisangaben sind gewerblich. Das Zahlungsmittel ist EURO.
Alle Rechte vorbehalten. (c) copyright H.Kolter

[ Zur KOLTER ELECTRONIC® Hauptseite ]