VBScript - pur

ftComputing : Programme für die fischertechnik-Interfaces und -konstruktionskästen
  
ftComputing.de
Home
Back
Sitemap
Index
Links
Impressum
Mail

 

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

AmpelErsteinmal 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.

fischertechnik mit seriellem Interface an COM1 : Verkehrsampel
Lampenbausteine Grün (an M1), Gelb (M2) und Rot(M3) an Grundbausteine anstecken, am Interface befestigen und Verkabeln.

Fehler

Und wenns dann trotzdem nicht läuft :

  1. Ablauf nur unter Internet Explorer ab Version 4 möglich
  2. Der Internet Explorer ist sicherheitsempfindlich unter Ansicht | Internetoptionen | Sicherheit | Angepaßt vorübergehend alle ActiveX Einträge (am Anfang der Liste) auf Fragen setzen.
  3. Jetzt müßte der Browser fragen. "Ja"-Sagen.
  4. 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.
  5. Ist das Interface wirklich an COM1 angeschlossen (sonst ft.OpenInterface "COM2")
  6. Ist es vielleicht ein paralleles Interface (ft.OpenInterface. "LPT1" (oder LPT2), Drucker ausschalten.
  7. Der Betrieb des parallelen Interfaces unter Win NT ist nur mit FishFa50D.DLL  möglich, Anpassen siehe oben.
  8. 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

  1. Zuordnen von symbolischen Namen für die Lampen (Const ...)
  2. Erstellen einer Verbindung zum FishFace-ActiveX (Set = ft ...
  3. Verbindung zum Interface
  4. Durchlauf von drei Ampelphasen (For ... Next)
  5. Schalten der Lampen mit WaitForTime für die Einschaltdauer
  6. Schließen der Verbindung zum Interface

Was braucht man nun

für das VBScript Programmieren (neben einer gesunden Portion Neugier) :

  1. 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)
  2. VBScript (aktuell Version 5.6 (März 02)) wird mit dem Internet Explorer installiert, ist auch im Päckchen ste56de.exe enthalten.
  3. 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).
  4. 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.
  5. 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.
  6. 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

Einsatz Zählwerk 30 242

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