| |
VBScript/JScript + FishFace mit Systemmitteln
Wenn man immer schon mal herausfinden wollte, was man alles mit VBScript
außerhalb von Verwaltungs-Jobs und Serverprogrammierung anstellen kann, sollte
man einfach mal den nächsten Absatz ausprobieren :
Probieren
Ersteinmal AmpelSCR.ZIP herunterladen,
Internetverbindung abschalten und nach AmpelVBS.TXT registrieren. Serielles Interface an
COM1 anschließen, Ampel ans Interface anbauen.
Und dann auf START drücken. Am einfachsten ist es offline (Also
vorher auch noch im Browser die Seite mit Datei speichern unter ... speichern.
Fehler
Und wenns dann trotzdem nicht läuft :
- Ablauf nur unter Internet Explorer ab Version 4 möglich
- Der Internet Explorer ist sicherheitsempfindlich unter Ansicht | Internetoptionen |
Sicherheit | Angepaßt vorübergehend alle ActiveX Einträge (am Anfang der Liste)
auf Fragen setzen.
- Jetzt müßte der Browser fragen. "Ja"-Sagen.
- Wird MSVBVM50.DLL vermißt, kontrollieren ob installiert. Ggf. von Windows CD
installieren oder wenn MSVMVB60.DLL vorhanden ist vbFish20Setup
mit FishFa50D.DLL herunterladen.
Set ft = CreateObject("FishFa50D.clsFishFace") anpassen. Quelltext
anzeigen der HTML-Seite : Rechts-Klick, Das VBScript-Programm steht am Anfang der Seite.
- Ist das Interface wirklich an COM1 angeschlossen (sonst ft.OpenInterface
"COM2")
- Ist es vielleicht ein paralleles Interface (ft.OpenInterface. "LPT1" (oder
LPT2), Drucker ausschalten.
- Der Betrieb des parallelen Interfaces unter Win NT ist nur mit FishFa50D.DLL
möglich, Anpassen siehe oben.
- Läuft immer noch nicht : Spannungsversorgung kontrollieren.
Programm-Details
Was ist da gelaufen. Eine normale HTML-Seite mit einem Formular-Feld und einem
START-Button über den ein VBScript-Programm aufgerufen wurde.
VBScript ist eine ganz normale Programmiersprache : eine abgemagerte Version von Visual
Basic dem das "Visual" fehlt. Und die Selbständigkeit, es braucht eine Umgebung
in der es ablaufen kann, das kann z.B. der Internet Explorer sein. Aber auch der Windows
Scripting Host (WSH). Der WSH wird standardmäßig mit Windows 98 (und 2000) installiert
(weitere (kostenlose) Installationsmöglichkeiten siehe unten). Hier ist die Umgebung
unsichtbar, ein Klick auf die VBScript-Datei reicht.
Das VBScript-Programm ist eine ganz normale Text-Datei, die mit NotePad (Editor)
editiert werden kann. Also Editieren, Speichern, Run. Das Ampel-Programm (AmpelMini.VBS)
sieht so aus :
Const cLampeRot = 3, cLampeGelb = 2, cLampeGruen = 1
Const cLampeAus = 0, cLampeEin = 1
Dim ft, i
Set ft = CreateObject("FishF532.clsFishFace")
ft.OpenInterface "COM1"
For i = 1 to 3
ft.SetMotor cLampeGruen, cLampeAus
ft.SetMotor cLampeGelb, cLampeEin
ft.WaitForTime 300
ft.SetMotor cLampeGelb, cLampeAus
ft.SetMotor cLampeRot, cLampeEin
ft.WaitForTime 1000
ft.SetMotor cLampeGelb, cLampeEin
ft.WaitForTime 300
ft.SetMotor cLampeRot, cLampeAus
ft.SetMotor cLampeGelb, cLampeAus
ft.SetMotor cLampeGruen, cLampeEin
ft.WaitForTime 800
Next
ft.CloseInterface
- Zuordnen von symbolischen Namen für die Lampen (Const ...)
- Erstellen einer Verbindung zum FishFace-ActiveX (Set = ft ...
- Verbindung zum Interface
- Durchlauf von drei Ampelphasen (For ... Next)
- Schalten der Lampen mit WaitForTime für die Einschaltdauer
- Schließen der Verbindung zum Interface
Was braucht man nun
für das VBScript Programmieren (neben einer gesunden Portion Neugier) :
- Den Windows Scripting Host (WSH aktuelle Version 2.0, Dateiversion 5.1, Nov 99). Bei
Windows 98 standardmäßig installiert (ggf. nachinstallieren Menü : Start |
SystemSteuerung | Software | WindowsSetup | Zubehör | Details | Windows Scripting Host. Für
Windows 95 und Windows NT4 bei Microsoft kostenlos herunterladen. Päckchen
ste51de.exe (Stand Nov 99)
- VBScript (aktuell Version 5.6 (März 02)) wird mit dem Internet Explorer installiert, ist
auch im Päckchen ste56de.exe enthalten.
- Dokumentation zu WSH und VBScript gibt es auch auf www.microsoft.com/germany/scripting
ein wenig suchen. Buch : Microsoft Press : Günter Born - Inside Windows Host, 79 DM (Hier
hörts dann mit kostnlos auf).
- Und dann gibt es da noch einen (kostenlosen) Debugger www.microsoft.com/scripting/debugger
siehe auch (3). Mit dem Debuggen unter Windows NT und WSH 2.0 hab ich da so meine Schwierigkeiten, aber
er kommt mit einem Editor, der Zeilennummern anzeigt, da spart das Zeilenzählen beim
Debuggen.
- Als komfortable Entwicklungs-Umgebung kann mit auch den Visual Basic
Editor von WinWord einsetzen (erfordert aber einige Einarbeitung).
Außerdem kann man mit Fronpage auch ganz vernünftig
VBScript/JavaScript-Programme editieren.
- Last not least : es gibt auch ein neues
ActiveX.DLL : FishFa50D.DLL mit ausführlicher Dokumentation und dem
kompilierten InterfacePanel zum interaktiven Test des Modellaufbaus mit
einem Setup-Programm: vbFish20Setup
Weitere Beispielprogramme finden sich bei der Stanze
51663, auf der SPS-Seite, beim
Einsatz eines Zählwerkes, einem Uhrenbeweger
und bei
den Robots.
JavaScript /JScript
JavaScript/JScript ist eine von Microsoft entwickelte
Scriptsprache, die zu großen Teilen dem von NetScape favorisierten und von
ECMA genormten JavaScript entspricht, aber immer dann wenns spannend wird
seine Eigenständigkeit beweist. Auch NetScape gibt sich da alle Mühe :
ActiveX-Elemente (hier FishF532.DLL/FishFa30.DLL) werden von JavaScript eisern ignoriert.
Sonst gilt das für VBS gesagte und ist auch in AmpelSCR.ZIP
verpackt. Weitere Beispiele und ein darauf abgestimmtes Handbuch finden sich
in mscFish30Setup.EXE.
Was geht : Windows Scripting Host(WSH, Microsoft) mit JScript(Microsoft) und der
Internet Explorer(Microsoft) mit JScript(Microsoft). Natürlich mit ein paar kleinen
Abweichungen gegenüber der VBScript-Lösung (neben den direkten Spracheigenheiten). Ich
habe unter Windows NT 4.0 SP4 mit WSH 2.0, JScript 5.1 und dem Internet Explorer 4.01 und
unter Windows 98 (Version 1) mit WSH 1.0? und JScript 3.0? getestet.
Stand : 29.01.2009 |