Page archived courtesy of the Geocities Archive Project https://www.geocitiesarchive.org
Please help us spread the word by liking or sharing the Facebook link below :-)


Webseiten-Logo Die neue Homepage!
Projekte
Model One
goes Europe
230V-Umbau
Lampenprojekt
Lampe
LED-Lichtobjekt
Lichtobjekte
Vectra C
Abblendspiegel
Vectra C
Sitzheizung
Vectra C
Anklappspiegel
PICSEL
Elektronischer
Quellenumschalter
Kenwood KA-990V
High End Upgrade
Audio-Mischpult
Battlemixer #1
C64DTV
Der C64 ist wieder da!
Digital-Regler
Temperatur-Regelung
mit digitalem Sensor
Autogas/LPG
Umbaubericht Vectra C
Autogas/LPG
Umschalter-Selbstbau
Autogas/LPG
GAKI-Projekt
Fahrradlicht
Spannungsbegrenzer
Sonstiges
Feierabendprojekte
Bilder
Industriekultur
Bochum
Volleyball
Mac Volley Warriors
Home
Startseite

Copyright © 2006 Christian
email-adresse
Valid CSS! Valid HTML 4.01 Transitional


1

Projekte


Hier eine kleine Sammlung an Fotos und Quelltexten etc. über ein altes Projekt aus dem Jahr 1994:

Ein HPGL-Selbstbauplotter


Features:
  • DIN A4 Papiergröße
  • Eigene Intelligenz mit 8051-Prozessor und 32k RAM
  • 2x16 Zeichen LCD-Display und 6-Tasten Bedienfeld, 3 Status-LEDs
  • HPGL-Interpreter für Linienbefehle: PU, PD, PA (Pen up, Pen down, Pen absolute)
  • Endschalter für alle Achsen
  • serielle RS232-Schnittstelle
  • Antrieb über 2 Unipolar-Stepper mit 200steps/U, Betrieb im Halfstep-Mode
  • Fischertechnik-Ketten zur Kraftübertragung
  • Ein Stifthalter mit Hubmagnet
  • Kugelgelagerte Brücke für x-Achse
  • Rahmenkonstruktion aus Plexiglas und Alu-L-Profilen
Hier ein paar Fotos:
Gesamtansicht
Gesamtansicht


Detail Bedienfeld, Bruecke
Controller, Bedienfeld, Y-Achse und Stifthalter (Klicken für Großbild)


Detail
... (Klicken für Großbild)


Detail: Controller
Contoller im Detail (Klicken für Großbild)


Platinenlayout Controller
Das Controller-Board-Layout (Klicken für Großbild)


Platinenlayout Bedienfeld
Das Bedienfeld-Layout (Klicken für Großbild)


Dazu gibt es die ASSEMBLER-Quelltexte (ich glaube ich habe damals den TASM/Table Driven Assembler von Speech Technology Inc. benutzt...) als ZIP
Die Board-Dateien des Controllers und des Bedienfeldes (konvertiert von EAGLE 2.05 nach 4.15) als ZIP. Die doppelseitig durchkontaktierte Controller-Leiterplatte habe ich damals beim PCB-Pool herstellen lassen: Super Sache!

Die Schrittmotoren würde ich jetzt mit nem ULN2803 ansteuern, damals habe ich eine Endstufe mit Transistoren aufgebaut. Die Adressdecodierung bzw. Cipselect-Erzeugung kann man statt mit einem GAL auch mit wired-or etc. erzeugen.

Der Kern des ganzen, der Bresenham-Linienalgorithmus als Pseudocode/Pascal-Quelltext:

Procedure PlotLine(x1,y1,x2,y2 :  Integer);
    Var
       px, py, dx, dy, ax, sy, rest, j :  Integer;
    Begin
 	ax := 1; sy := 1;
    	dx := (x2-x1);
 	dy := (x2-yl);
 	px := 0;
 	py := 0;
    	If dx<0 Then
         Begin dx := -dx; ax := -1 End;
 	If dy<0 Then
      	 Begin dy := -dy. sY := -1 End;
 	rest := dx Div 2;
 	move stift to(px,py);
 	If (dx != 0)-And (dy != 0) Then
      	Repeat
          px := px+ax;
 	  rest := rest+dY.
          If resT>=dx Then
           Begin
 	   py := py+sy;
           rest := rest-dx;
           move_x_Y; (*SCHRITT IN X- UND Y-RICHTUNG*)
           End
       	  Else
           move x;(*SCHRITT IN X-RICHTUNG*)
 	Until px-~dx
 	Else If (dx=0) And (dy != 0) Then
   	RepeaT
 	py : = py+ sy;
 	move_y; (*SCHRITT IN Y-RICHTUNG*)
  	 Until py=dy
	Else If (dx!= 0) And (dy=0) Then
  	Repeat
   	  px := px+ax;
  	  move_x;
 	 UnTil px=dx;
	End;

Der Programmfluss der Assembler-SW in plotter1.zip als unvollständiges Pseudocode-Bruchstück:
10  Schalte LEDs aus
20  Springe zu LCD_Init
30  Fahre nach 0,0
35  Initialisiere Variablen, Clear RAM, Init RS232
40  Warte auf serielles Zeichen oder Taste
50  Wenn Taste, dann Menü behandeln ->goto MENU
60  Wenn Zeichen, dann PA, PD, PU auswerten -> goto COMMAND
70  Wenn Zeichen Dateiende -> goto WORKFIRST
80  gehe zu 40

100 COMMAND:
110 Ist es PU? Pen-Bit setzen
120 Ist es PD? Pen-Bit löschen
130 Ist es PA? Koordinaten von ASCII zu Binaer wandeln, ins RAM schreiben -> goto KOORDINATEN
140 goto 40

200 WORKFIRST:
210 Koordinaten aus RAM abarbeiten, Plotten
220 ...

300 MENU:
310 Tasten auswerten
320 ...
Hier gibt es noch eine ganz interessante Seite mit Selbstbau-Plottern und Algorithmen.