Diplomarbeit
Entstehung
Inhalt
Abkürzungen
Einleitung
Recherche
Konzept
Umgebung
Hardware
Software
Funktionsweise
Zusammenfassung
Anhang
Funktionsweise

7 Funktionsweise, Bedienung des Interfaces


7.1 Gerätekonfiguration

Zur Arbeit mit dem neuen Meßmittelinterfacemodul ist lediglich ein Terminal 2090 oder 2095 (mit externem 12-Zoll-Monitor, sonst identisch) mit der neuen MUX-Software erforderlich. Selbstverständlich wird auch noch mindestens ein Meßmittel zur Aufnahme der Meßdaten benötigt. Alle anderen Funktionen des Terminals (Verbindungen zum übergeordneten PC) bleiben unberührt und können nach wie vor verwendet werden. Das Interfacemodul wird auf die intern in dem Terminal vorhandene MPC-Bus-Platine gesteckt und kann -nach erfolgter Konfiguration auf das Meßmittel- sofort in Betrieb genommen werden.

7.2 Interfacekonfiguration

Auf dem Interface befinden sich mehrere Jumper, welche zu Konfigurationszwecken dienen und durch folgende Grafik dargestellt werden sollen:

Jumperkonfiguration


Abb. 33: Lage der Jumper zur Interfacekonfiguration


Die Jumper haben folgende Bedeutung:

J1 bis J16 definieren den Ausgangs-Spannungspegel der 4 Ausgangskanäle. Dabei sind die 16 Jumper in Gruppen zu je vier nebeneinanderliegenden Jumpern aufgeteilt, welche dann für jeweils einen Kanal zuständig sind. Die Schaltungen der vier Kanäle sind identisch. J1 bis J4 definieren die Spannung für Kanal 1, J5 bis J8 Kanal 2 usw. Dabei sind die Jumper in einer binären Wertigkeit gewichtet: Je nach Rückkopplungswiderstand (Vgl. Abschnitt 5.3) kann die Ausgangsspannung für logisch "1" in 0.5V oder 1V-Schritten eingestellt werden. Beim Prototyp ist ein 1MW-Widerstand eingebaut, der eine Schrittweite von 1V definiert. Dabei hat J1 für Kanal 1 die Wertigkeit 8V, J2 verändert die Ausgangsspannung um 4V, J3 um 2V und J4 um 1V.

Durch Stecken einer Kombination aus diesen vier Wertigkeiten kann die Ausgangsspannung so digital in 1V-Schritten von 1 bis theoretisch 15V eingestellt werden. Theoretisch deshalb, weil die Operationsverstärker nur eine maximale Ausgangsspannung von etwa 14V liefern können. Dadurch, dass die Schaltung positive als auch negative Ausgangsspannungen liefert und die Verstärkung eines Operationsverstärkers bei verschiedenen Polaritäten bei der hier implementierten Schaltung um 1V abweicht, sind die Absolutwerte der Ausgangsspannungen für verschiedene Polaritäten nicht gleich, sondern unterscheiden sich um 1V. In der Praxis ist das jedoch nicht so wichtig, da durch Bauteiletoleranzen ohnehin die realen Werte immer von den berechneten etwas abweichen, man sollte also die Ausgangsspannung nach einer Einstellung immer zur Sicherheit noch einmal nachmessen.

Wichtig ist, dass immer mindestens ein Jumper gesteckt sein muss, da sonst der Operationsverstärker in der Rückfuehrung nicht beschaltet ist. Genauere Erläuterungen zu den Operationsverstärkerschaltungen finden sich im Abschnitt 5.3.

Die zu steckenden Jumper für eine bestimmte gewünschte Ausgangsspannung findet man am besten in der Tabelle im Abschnitt 5.3, wo für beide Rückkopplungswiderstands-Werte (1MW und 500kOhm) alle möglichen Kombinationen aufgeführt sind.

J17 bis J20 legen fest, ob die Ausgangsspannungen der Ausgangskanäle bei einer logischen "1" positiv oder negativ ist (für logisch "0" werden immer 0V erzeugt). Dabei müssen immer beide Jumper eines Kanales gesteckt sein. Jeweils zwei Jumper bilden eine zu einem Kanal gehörige Einheit. Sind die Jumper senkrecht gesteckt (wenn man die Interfaceplatine mit der MPC-Bus-Messerleiste nach rechts hält und auf die Bestückungsseite schaut), dann ist die Ausgangsspannung negativ, sind sie waagerecht gesteckt, so ist die Ausgangsspannung positiv. Der Viererblock, welcher am weitesten von der MPC-Bus-Messerleiste entfernt ist, beeinflusst Kanal 1, der benachbarte Kanal 2 usw.

J21 und J22 definieren die Triggerpegel für die vier Eingangskanäle. Dabei ist der obere (J21) Jumper für die Eingänge 1 und 2 zuständig, während der untere (J22) Jumper Kanal 3 und 4 beeinflusst. Die Jumper sind als T-Jumper ausgeführt und können nur auf drei verschiedene Arten mit (pro T-Jumper) nur jeweils einem Jumper versehen werden. Dabei muss aber immer ein Jumper gesteckt sein, da sonst die Operationsverstärker-Eingänge der beiden Konstantspannungsquellen rund um IC4 unbeschaltet wären. Die Auswirkungen der drei möglichen Jumperstellungen sind in der Grafik auf der vorigen Seite oben links angegeben. Man kann die Triggerschwelle der beiden an dem betreffenden Jumper angeschlossenen Eingangskanäle entweder fest auf +1.4V (Jumper oben gesteckt), fest auf -1.4V (Jumper links gesteckt) oder variabel mit Potentiometer P1 zwischen -15V und +15V einstellbar (Jumper unten gesteckt) definieren.

Alle Eingangssignale mit einem höheren Potential als die eingestellte Triggerschwelle werden vom Interface als logisch "1" interpretiert, während alle Signale kleiner als diese Triggerschwelle als logisch "0" erkannt werden. Meist wird z.B. für TTL-Signale die Einstellung auf +1.4V sofort funktionieren. Sollten die vorwählbaren Werte von +/-1.4V einmal keine brauchbaren Ergebnisse liefern, so muss mit einem Sägezahngenerator bei einer Frequenz von etwa 1kHz ein Signal mit der gewünschten Amplitude und Potentiallage am Eingang des Interfaces aufgebracht werden. Mit einem Oszilloskop am PIA-Eingang des betreffenden Kanales wird (betreffender T-Jumper J21 oder J22 unten gesteckt) das Tastverhältnis der entstehenden Rechteckspannung mit P1 so abgeglichen, dass die "1"-Phase genauso lange dauert wie die Phase, bei der das gemessene Signal auf "0" steht. Dadurch hat man die Triggerschwelle der Eingangs-Komparatoren genau auf die Mitte zwischen den analogen Maximal- und Minimalspannungswerten, welche am Eingang auftreten, abgeglichen.

Mit J23 bis J26 kann für die Eingangs-Komparatoren wahlweise ein Hysterese-Widerstand in die Rückkopplung mit eingeschleift werden. Damit erhält der betreffende Komparator eine Eingangs-Hysterese mit Schmitt-Trigger-Charakteristik und kann dann auch Signale mit kleineren Flankensteilheiten verarbeiten. J23 beeinflusst Kanal 1, J24 Kanal 2, J25 Kanal 3 und J26 betrifft Kanal 4.

Mit J27 bis J30 kann man per Hardware die Interrupt-Ausgänge der MPC-Bus-Bausteine freigeben oder sperren. Dies ist sinnvoll, wenn man z.B. für Testzwecke den Interrupt vorübergehend abschalten möchte. Dabei sperrt J27, wenn er gezogen wird, den Interrupt-Ausgang der ACIA, J28 den Interruptausgang von Port B der PIA1 (IC6), J29 den Interrupt-Ausgang von Port A der PIA2 (IC11) und J30 den Interrupt-Ausgang von Port B der PIA2 (IC11). Da die Interrupt-Ausgänge aller MPC-Bus-Teilnehmer über open-collector-Ausgänge realisiert sind und auf der MPC 104 ein Pull-up-Widerstand für die IRQ-Leitung vorgesehen ist, kann man durch einfaches Zusammenschalten aller IRQ-Ausgänge eine Wired-AND-Logik erzeugen. Sobald irgendwo ein Interrupt auftrat, zieht der entsprechende Busteilnehmer über seinen IRQ-open-collector-Ausgang die IRQ-Leitung auf "Low" und löst so im Prozessor die Interrupt-Abarbeitung aus. Will man dies verhindern, so zieht man einfach den entsprechenden Jumper und der Interrupt kann nicht bis zum Prozessor vordringen.

J31 bis J36 legen die Länge des Schieberegisters (Sylvac-Logik) +1 fest. Wenn eine Länge von 24 Bit eingestellt werden soll, so muss die binäre Zahl 23 eingestellt werden. Dabei findet sich auch hier wieder eine binäre Gewichtung bei den Jumpern: J31 verändert die eingestellte Länge um 1 Bit, J32 um 2 Bit, J33 um 4 Bit usw. bis J36, der die eingestellte Länge um 32 Bit beeinflusst. Dabei ist die betreffende Länge gewählt, wenn der Jumper näher zur MPC-Bus-Messerleiste gesteckt wird und sie ist nicht gewählt, wenn die andere mögliche Position gesteckt wird. Es müssen aber immer alle 6 Jumper gesteckt werden, da sonst die Konfigurations-Eingänge des Schieberegisters unbeschaltet sind. In einer späteren Layoutversion der Platine könnte man dies auch mit einem DIP-Schalter erledigen. Eine Schieberegisterlänge von 24 Bit beispielsweise wird durch Stecken der Jumper J31, J32, J33, J35 in die "Ein"-Position und Stecken der restlichen Jumper in die "Aus"-Position eingestellt (23=%010111).

J37 wählt einen Schieberegister-Ausgang aus. In der näher zur MPC-Bus-Stecker-leiste befindlichen Steckposition wird der invertierende, in der anderen Steckposition der nichtinvertierende Ausgang ausgewählt. So ist eine einfache eventuell erforderliche Invertierung der über das Schieberegister empfangenen Daten möglich.

Mit J38 kann der Emitter des Optokopplers auf Masse gelegt werden, wenn eine Meßmittel-Leitung über den Optokoppler auf Masse gezogen werden muss (z.B. für Mitutoyo-Meßmittel). Ist der Jumper gesteckt, so ist der Emitter des Optokopplers mit Masse verbunden.

J39 legt die Daten- und Takt-Eingänge des Schieberegisters wahlweise auf den Sylvac-Eingang (linke Position des Jumpers) oder auf den Standard-TTL-(Trimos)-Eingang, wenn er näher zur MPC-Bus-Steckerleiste gesteckt wird. Dieser Jumper legt eine Steuerspannung an einen EPLD-Eingang des EPLDs (IC17) und darf deshalb nicht ungesteckt bleiben!

Mit P2 kann die Ausgangsspannung der Spannungsversorgung für Meßmittel zwischen den Maxima -15V und +15V eingestellt werden.


7.2.1 Standard-Einstellung

Hier wird nun eine Standard-Konfiguration des Interfaces angegeben, welche immer einen ersten Testbetrieb ermöglicht, und auf die alle nicht benötigten Baugruppen immer eingestellt werden sollten.

Von den Jumpern J1 bis J16 sollten alle Jumper mit geraden Nummern gesteckt und alle ungeraden Jumper nicht gesteckt werden. Mit einer positiven Polarität der vier Polaritätsjumper (J17 bis J20 waagerecht gesteckt) ergibt dies eine Ausgangsspannung im "Ein"-Zustand von rechnerisch +6V, es wurde jedoch real ein Wert etwas über +5V gemessen. Dies ist ein Standard-Wert, bei dem auch empfindlichere Meßmittel-Eingänge noch nicht direkt zerStört werden und mit dem alle TTL-Schnittstellen bedient werden können. Gleichzeitig ist bei einem Wert von 5V der Signal-Rauschabstand des Ausgangssignales mit Sicherheit unkritisch.

J21 und J22 sollten auf die obere Steckposition gesteckt werden, damit positive Eingangssignale einwandfrei erkannt werden. P1 sollte in eine Mittelstellung gedreht werden, damit -falls einmal die variable Triggerschwelle über die T-Jumper benötigt wird- der Startwert des Abgleichs in der Gegend von 0V liegt und man nicht erst suchen muss, wo man sich im Bereich von -15V bis 15V befindet.

Die Hysterese-Jumper J23 bis J26 sollten nur gesteckt werden, wenn die zu lesende Schnittstelle ohne Hysterese nicht zu lesen ist.

Die Interrupt-Freigabe-Jumper J27 bis J30 sollten nur gesteckt werden, wenn ganz bewusst der Interrupt des entsprechenden Peripherie-Bausteins benötigt wird, da sonst durch unbeschaltete Interrupt-steuernde Eingänge der PIAs unbeabsichtigte (und Rechenzeit kostende) Interrupts ausgelöst werden können. Im momentanen Stand der Software wird ein Interrupt von Peripherie-Bausteinen nicht verwandt, die Jumper sind alle nicht gesteckt.

Die Länge des Schieberegisters sollte auf den maximalen Wert eingestellt werden (alle Jumper von J31 bis J36 in "Ein"-Position), damit bei ersten Testläufen keine Daten verloren gehen.

J37 wird so gesteckt, dass der nichtinvertierende Ausgang des Schieberegisters gewählt wird (vom MPC-Bus-Stecker weiter entfernt).

Der Massejumper für den Optokoppler (J38) wird nicht gesteckt, damit Meßmittel, welche absolut potentialfrei angeschaltet werden müssen, nicht beschädigt werden können.

Zuletzt sollte noch die Ausgangsspannung der Spannungsversorgung für Meßmittel auf 0V eingestellt werden, wenn sie nicht benötigt wird (P2 in Mittelstellung), damit bei einem versehentlichen Kurzschliessen des Ausgangs der Operationsverstärker nicht unnötig belastet wird.


7.3 Einschalten des Interfaces

Vor dem Einschalten des Interfaces sollte die Konfiguration der Interfacemodule abgeschlossen sein, da durch das Ziehen und Stecken von Jumpern bei eingeschalteter Betriebsspannung undefinierte und evtl. sogar zerStörerisch wirkende Zustände auftreten können. Alle Platinen und Module sollten nicht gezogen oder gesteckt werden, wenn das Gerät eingeschaltet ist, da dann mindestens das Programm abstürzt und evtl. vorhandene Daten oder im gepufferten RAM der MPC104 abgelegte Bildmasken verloren gehen. Im schlimmsten Fall können durch Ziehen oder Stecken von Platinen am MPC-Bus auch Bauteile zerStört werden. Nach dem Einschalten sollte nach einer kurzen Wartezeit von etwa 1 Sekunde nochmals ein Reset ausgelöst werden, damit auch wirklich alle Baugruppen im Gerät in einen definierten Anfangszustand gelangen.

Nach einem Reset muss dann ein Meßmittel-Lese-Modul über den Auswahl-Schalter an der Frontplatte ausgewählt werden. Anschliessend wird das Terminal-Programm gestartet, indem eine beliebige Funktionstaste an der Terminal-Frontplatte gedrückt wird (sinnvoll ist zur Arbeit mit den Meßmitteln die F1-Taste, welche die Anzeigemaske für die Meßdaten auf den Bildschirm bringt). Unmittelbar nach dem Start des Terminal-Programms wird die LED an dem ausgewählten Interfacemodul aufleuchten und die korrekte Auswahl anzeigen. Etwa 5 Sekunden nach dem Einschalten wird der monochrome grüne Bildschirm mit seiner Arbeit beginnen und die mit der Funktionstaste angewählte Terminal-Programm-Maske anzeigen.

7.4 Auswahl eines Meßmittels

Die Meßmittelauswahl erfolgt über den Modul-Auswahl-Taster an der Frontplatte der Meßmittel-Interface-Module. Sobald eine durch eine Datenanforderung eventuell durchlaufene Meßmittel-Lese-Routine verlassen ist und das Programm wieder in der Terminal- und MUX-Hauptprogramm-Schleife kreist, werden alle Taster der angeschlossenen Module regelmässig abgefragt. Während ein Meßmittel gerade bedient wird, ist ein Modulwechsel nicht möglich, das Programm muss sich dazu in der Hauptschleife befinden.


7.5 Aufnahme von Meßwerten

7.5.1 Bedienung des Barcodelesers

Zuerst muss mit dem Barcodeleser ein Barcode eingelesen werden. Die Mini-CPU des Barcodelesers quittiert einen erfolgreichen Lesevorgang durch einen kurzen Piepston. Sobald der Piepston angefangen hat, kann am MUX der Fusstaster gedrückt werden, wodurch die Daten in den MUX eingelesen werden. Wenn die LED - Monitorplatine gesteckt ist, zeigt ein kurzes Aufblinken aller LED's, dass der Einlesevorgang korrekt beendet werden konnte und die Daten an der richtigen Stelle korrekt formatiert im Speicher stehen und dort abgerufen werden können. Sofort danach springt das Programm in die Terminalprogramm-Hauptschleife zurück, wo dann alle Terminalfunktionen sofort wieder zur Verfügung stehen.

Der Barcodeleser kann erst dann wieder Daten lesen, wenn die im Speicher der Mini-CPU abgelegten Daten vom MUX abgeholt wurden. Wenn der Fusstaster am MUX betätigt wurde, ohne dass der Barcodeleser vorher Daten eingelesen hatte, so tritt nach zwei Sekunden ein Timeoutfehler auf, da der Barcodeleser auf die Datenanforderung nicht reagiert, wenn er keine Daten gespeichert hat.

7.5.2 Bedienung des Mitutoyo-Gerätes

Nachdem ein Interface-Modul ausgewählt wurde, welches auf die Mitutoyo-Digimatic-Schnittstelle konfiguriert wurde, das Meßmittel angeschlossen wurde und eine Anzeige zu sehen ist, muss lediglich der Fusstaster gedrückt werden, der Anzeigewert wird dann sofort vom MUX übernommen. Dies kann beliebig oft geschehen, sogar während man den Messschieber bewegt. Es wird immer der Anzeigewert übernommen, egal ob er nun positiv oder negativ, metrisch (Einheit mm) oder zöllisch (Einheit inch) ist.

7.5.3 Bedienung der Helios-Meßschraube

Die Helios-Messschraube ist ein wenig empfindlich, wenn sie unter Spannung an den Multiplexer angeschlossen wird. Gelegentlich erscheint dann ein unleserlicher Datenmüll auf der Anzeige der Messschraube, sie reagiert dann auch nicht mehr auf eine Datenanforderung. Ein Reset an der Messschraube sorgt in einem solchen Fall für definierte Zustände. Danach wird der aktuelle Meßwert sofort angezeigt. Der absolute Nullpunkt des Messgerätes befindet sich genau an der zum Zeitpunkt des Resets herrschenden Stellung der Messschraube. Man sollte also vor einem Reset die Schraube zudrehen.

Durch Betätigung des Fussschalters wird der momentan in der Anzeige befindliche Meßwert direkt in den MUX übernommen. Wenn man in den Relativ-Modus umschaltet, wird der dann sichtbare relative Anzeigewert übernommen. Die Helios-Messschraube sendet bei einer Datenanforderung keine Daten aus, wenn sie zum Zeitpunkt der Anforderung verstellt wird. Dabei ist festzustellen, dass die Anforderung nicht zwischengespeichert wird, d.h. wenn bei einer Datenanforderung (genauer, wenn die Request-Leitung wieder auf "Low" geht) die Messschraube verstellt wird, entsteht in jedem Fall ein Timeout-Fehler, auch wenn vor dem Ablauf der Timeoutzeit die Schraube wieder stillsteht.

Auch hier wird wieder immer der in der Anzeige befindliche Meßwert übernommen, sei er nun positiv oder negativ, in mm oder inch gemessen.

© 2001 Marcel Sieling, http://www.powerslider.de
   Ich freue mich immer über nette EMails, die ich gerne beantworte.