IEC-Bus ans Ethernet

Zur Abwechslung ist dies eine (fast) komplette Beschreibung eines Interface-Boards, das ich in erster Linie für den Anschluß einiger Labormessgeräte mit IEC-Bus an das lokale (Ethernet-) Netzwerk benötigte. Es gibt wie immer den Schaltplan, aber auch ein komplettes Platinenlayout, das man nur noch zu einem Platinenhersteller seiner Wahl geben muß.

Wie gesagt, ich hatte das Problem einige Labormessgeräte über den IEC-Bus von einem Linux-PC aus zu steuern. Gut, es gibt da ein Projekt (Linux Lab Project), mit vielen interessanten Sachen, auch Treiber für IEC-Bus-Karten für PCs, zufällig lag da auch eine solche Karte im Schrank, aber wie das so ist, hat das überhaupt nicht funktioniert. Es hat mich einige Zeit gekostet, herauszufinden, daß der Chip auf der Karte eine kastrierte Version war, die nicht Controller-fähig war, womit sich die Karte sofort für den geplanten Einsatzzweck disqualifizierte. Die Messgeräte mußte ich aber trotzdem steuern, also was tun?

  • Neue Karte kaufen? Ja, geht, aber unpraktisch mit dem elenden IEC-Bus Kabel, das vom PC zum Kalibrator verlegt werden muß, außerdem muß man darauf achten, daß die Karte auch mit den Linux-Treibern geht. Die Hersteller liefern ja nur Windows-Treiber.

  • Schnittstellenkonverter von IEC-Bus auf Ethernet kaufen? Schon besser, aber fürchterlich teuer, weil von der Messtechnik-Apotheke (National Instruments).

  • Selber bauen? Noch besser, aber wie ans Ethernet anschließen? Wieso ist das ein Problem? Nein, es ist natürlich kein Problem, es gibt ja den IPC@Chip SC12 von Beck IPC (ganz bei mir in der Nähe in Wetzlar). Das ist eigentlich ein geniales Ding: in einem 32poligen Modul verbirgt sich eine AMD-CPU (80C186), 512KB RAM, 512KB Flash und ein 10Mbit/s Ethernet-Interface. Zu allem Überfluß ist da schon ein Bios drin, das die wichtigsten DOS- und PC-BIOS-Interrupts emuliert und noch Multitasking kann. Der TCP/IP-Stack ist auch dabei. Was für ein Luxus, und eigentlich genau das Ding was ich hierfür brauche.

    Also, so ein @Chip hat die besten Aussichten, mein Problem lösen zu können. Weil ich für den IEC-Bus eigentlich nur eine handvoll Open-Collector-Treiber brauchte und dann noch so viel Platz auf der Platine war, habe ich noch ein paar Anschlüsse zusätzlich vorgesehen:

  • Die beiden seriellen Schnittstellen des SC12 mit RS232 und DSUB-Steckern
  • Ein zum PC-Druckerport pinkompatibel (aber nicht softwarekompatibel) belegter DSUB-Stecker
  • Eine Pfostenleiste für Standard-LCD-Module mit dem HD44780
    Man weiß ja nie, wozu man das noch brauchen kann...

    Auf der Softwareseite gibt es zur Zeit nur das Programm für den IEC-Bus, und das ist auch noch ziemlich im beta-Stadium. Ach ja, da ist noch eine kleine Task drin, die ein anderes Messgerät (das Netzimpedanzmessgerät EWS 120) über dessen Parallelport mit dem Netzwerk verbindet. Ist ganz praktisch an meinen Arbeitsplatz, spart ein langes Druckerportkabel.

    Neu in der Version 0.3 ist ein COM-Port-Server, der die beiden seriellen Schnittstellen (COM und EXT) bedient. Mit einem geeigneten Treiber kann man die serielle Schnittstelle eines PCs auf einen der beiden Ports umleiten. Als geeignet für Windows hat sich der Redirector von Lantronix (ftp.lantronix.com) erwiesen, der dort zum Download angeboten wird (oder auch nicht mehr, der Link ist tot). Das von dem Redirektor verwendete Protokoll ist nicht dokumentiert, zumindest die Codes zum Einstellen der Baudrate konnte ich raten. Wer hier mehr weiß oder herausfindet, kann mir das ja mailen. In der Konfiguration des Redirectors wählt man TCP Port 0 für EXT oder TCP Port 1 für COM, in den Port Settings sollte "forve v2 protocol" aktiviert werden. Interessanterweise addiert der Redirector 11000 zu der eingegebenen Portnummer, so daß der @Chip auf Port 11000 bzw. 11001 empfängt.

    Nun ans Eingemachte:
    Die Schalt- und Bestückungspläne zu angucken: scbrd.pdf
    Der Schaltplan und das Layout im Protel-Format: scbrd-protel.zip
    Das Layout als Gerber-Daten: scbrd-gerber.zip
    Die Software für den IEC-Bus-Konverter:
    Version 0.2: scbrd-0.2.tar.gz, auch für @Chip-Bios 0.71 geeignet, ansonsten muß der @Chip mindestens Bios 0.67 enthalten.
    Version 0.3: scbrd-0.3.tar.gz, für Bios 1.00 oder höher, mit COM-Server.

    Und die Beweisfotos:


    Das Board mit dem @Chip SC12


    Und was man damit machen kann: Ein Multimeter und ein Funktionsgenerator am IEC-Bus, und noch das EWS 120 (in offener Bauweise, kann man so nicht kaufen) am Druckerport.
     

    Zurück zur Homepage ... und ein Zaehlpixel hab ich auch :-)