education Line

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

 

education Line

Unter der Bezeichnung education Line werden Modelle der Firma Knobloch für den Schulgebrauch zusammengefaßt. Das beginnt mit kleinen Ampel und geht hin zu einer großen Kreuzung (Modell CrossRoads).

Programmiert werden können sie mit ROBO Pro und auch - besonders bei komplexeren Aufgaben - mit der  eduLine.DLL. Zusätzlich werden Deklarationen und kleine Beispiele für die Programmiersprachen C# 2005 / 2008, VB 2005 / 2008, Delphi, Java, Python und VC++ 6.0 angeboten. Hinweis für den Betrieb unter Windows 7 / 64bit Systemen.

Für die Programmiersprachen VB 2005 / 2008 und C# 2005 / 2008 sowie Java und Python wird zusätzliche Unterstützung in Form der .NET Assembly CrossRoads.DLL. Hier gibt es auch umfangreichere Beispielprogramme.

private void MultiBlinker() {
  uint Lampe = (uint)OutM.EM1O8;
  uint Blitzer = 0;
  lstAusgabe.Items.Add("Spielereien mit den Moeglichkeiten");
  do {
      cr.SetOutputs(Blitzer + Lampe + (uint)OutM.IF1O1 + (uint)OutM.EM3O6);
      cr.Pause(444);
      cr.SetOutputs(Lampe + (uint)OutM.IF1O4 + (uint)OutM.EM3O8);
      cr.Pause(333);
      if(cr.GetInput(Inp.IF1I1)) lstAusgabe.Items.Add("Laeuft - Helligkeitswert : "
             + cr.GetVoltage(Inp.A1)).ToString();
       Blitzer = cr.GetInput(Inp.EM1I6) ? (uint)OutM.EM1O7 : 0;
    } while (!cr.Finish());
  }

  • Anzeige Ampeln Rot und Gruen im Wechsel (links unten, rechts oben)
  • Straßenlaterne
  • Blitzer wenn Auto auf Kanaldeckel I6 steht
  • Anzeige der Umgebungshelligkeit bei Druck auf Fussgaenger I1
  • Abbruch der Endlosschleife durch ESC-Taste

Und weitere Beispiele

Hinweis : auf der VB2005-Seite gibt es ein interessantes Tutorial mit recht komplexen Ampelprogrammen, man kann sie relativ leicht (Korrektur der Lampenzuordnung ...) auf die CrossRoads umstellen.

Java - BlueJ

Inzwischen wurde für Java das package eduLine.jar um die Klasse CrossRoads mit Zubehör erweitert. Die Beispiel-Programme dazu entsprechen denen von C# 2005. Sie liegen als BlueJ-Projekte vor.

private class Blitzen implements Runnable {
  @Override public void run() {
    do {
       if(anforderung && rotActive) {
          if(cr.getInput(Inp.EM1I5) && !cr.getInput(Inp.EM1I3)) {
             cr.setOutput(Out.EM1O7, Dir.On);
             cr.pause(444);
             cr.setOutput(Out.EM1O7, Dir.Off);
             anforderung = false;
          }
        }
        else anforderung = cr.getInput(Inp.EM1I3);
        cr.pause(123);
    } while(!cr.finish());
  }
}


public void rotBlitzer() {
  anforderung  = false;
  rotActive    = false;
  Thread blitz = new Thread (new Blitzen());
  blitz.start();
  System.out.println("rotBlitzer ist aktiv");
  do {
      cr.setOutputs(Duos.Rot + Duos.GruenQ);
      rotActive = true;
      cr.pause(3500);
      rotActive = false;
      cr.setOutputs(Duos.Gelb + Duos.GelbQ);
      cr.pause(1000);
      cr.setOutputs(Duos.Gruen + Duos.RotQ);
      cr.pause(3500);
      cr.setOutputs(Duos.Gelb + Duos.GelbQ);
      cr.pause(1000);
  } while(!cr.finish());
  cr.clearOutputs();
  System.out.println("--- Finito ---");
}
Hier aus der Klasse Ampeln die Method rotBlitzer und der Thread-Methode Blitzen zur Erkennung von Rotlichtsündern.

Downloads

Die CrossRoads-Anleitung im PDF-Format

Die Beispiele dazu (einschl. Anleitung.PDF), CrossRoad-Treiber

Stand : 14.12.2011