Skip to the content
2 layers100 × 160 mmSteuerwerk, the printed circuit board in 3D

Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

Size
100 × 160 mm
Copper layers
2
Thickness
1.6 mm
Parts
332
Nets
110
Pads
821
Tracks, vias
682, 8
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
11 Sep 2020
Updated
14 Sep 2024

Overview

Steuerwerk is an open-source printed circuit board by michAtEl, from the michAtEl/Bonsai-Modellcomputer repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 100 × 160 mm with 332 parts on 110 nets, routed with 682 tracks and 8 vias.

It is built around the 74HC541D, 74HC240D and 74HC138, with the 74HC374 among its other parts. Its parts include 279 diodes, 23 resistors, 9 capacitors, 9 connectors and 8 ICs.

Main components

4

README

README.md

Bonsai-Modellcomputer

Der Bonsai-Modellcomputer wurde von Klaus Merkert für den Einsatz im Informatikunterricht entwickelt. Auf folgender Seite findet man unter anderem Schaltpläne und Platinenlayouts von Klaus Merkert zum Bau eines Bonsai-Modellcomputers: http://www.hsg-kl.de/faecher/inf/material/bonsai/

Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

Viele Bauteile, die in den Plänen von Klaus Merkert verwendet werden, wurden abgekündigt und sind heue (Stand 2021) nicht mehr verfügbar. Ziel dieses Projektes ist es deshalb, eine Version des Bonsai-Modellcomputer zu entwickeln, die möglichst leicht nachgebaut werden kann.

Projekstatus

Der Prototyp funktioniert und wurde im Unterricht eingesetzt. In den Github-Issues sind einige kleinere Probleme beschrieben, die vor einem weiteren Nachbau behoben werden könnten.

Bonsai-Modellcomputer

Änderungen gegenüber den Plänen von Klaus Merkert

  • Die Namen und Reihenfolge der Steuersignale wurden an den Simulator angepasst (vgl. https://bonsai.pinyto.de/documentation/micro/)
  • Alle Schaltpläne und Platinen wurden mit der Software KiCad gezeichnet (http://kicad.org).
  • Für die Platinen wurden neue Layouts entwickelt, damit die Möglichkeiten eines doppelseitigen Layouts besser genutzt werden können.
  • Die Steckverbinder zur Verbindung der Steuersignale sowie der Spannungsversorgung mit den Platinen wurden ersetzt durch Reichelt PSK (Alternativ kann man Molex KK verwenden. Diese Steckverbinder sind besser, aber auch deutlich teurer).
  • Alle Bauteile der Familie 74LS wurden durch Bauteile der Familien 74HC oder 74HCT ersetzt.
  • Zur Nullentdeckung auf der Platine Befehle wurde eine Wired-And-Verknüpfung mit Open-Collector-Ausgängen verwendet. Diese Wired-And-Verknüpfung wurde durch Gatter in einem 74HC08 ersetzt.
  • Zur Erzeugung eines automatischen Taktsignals wird ein Mikrocontroller (Atmega 48-20P) verwendet. Der Quellcode liegt im Verzeichnis EinTaktReset-src. Der Quellcode kann mit dem Microchip Studio compiliert werden. Der Mikrocontroller kann anschließend über den ISP-Header auf der Platine EinTaktReset programmiert werden.

Eine Bonsai nachbauen

Beschaffung der Bauteile

  • Flachbandkabel: Diese Flachbandkabel kann man aus IDE-Kabeln herstellen.
  • Taster Digitast: Diese Schalter sind in den letzten Jahren sehr teuer geworden (ca. 5€ pro Taster). Kompatible Nachbauten findet man auf der Seite https://de.aliexpress.com/ unter der Bezeichnung PB86. Zur Sicherheit: Datenblatt (insbesondere Abmessungen und interne Schaltung) prüfen!
  • Die Steckverbinder

Platinen fertigen lassen

Die Pläne wurden mit KiCad gezeichnet. In den *.kicad_sch-Dateien befinden sich die Schaltpläne, die Platinenlayouts sind in den *.kicad_pcb-Dateien. Um die Platinen fertigen zu lassen, muss man das Platinenlayout in ein Format exportieren, dass der Hersteller versteht. In der Regel ist das Gerber. Die Gerber-Exporte, die bei dem Prototypen verwendet wurden, liegen im Verzeichnis gerber. Diese Gerber-Dateien wurden von https://jlcpcb.com/ problemlos gefertigt.

Platinen bestücken

Es werden nur bedrahtete Bauteile (keine SMD-Bauteile) verwendet, da bedrahtete Bauteile von Lötanfängern (z.B. Schülern) leichter bestückt werden können. Es ist sinnvoll, bei allen ICs je einen Sockel zu verwenden.

Der Bestückungsdruck der Platinen wird für Hinweise zur Bedienung des Rechners verwendet. Die Bezeichnungen der Bauteile stehen nicht im Bestückungsdruck. Man erfährt diese Bezeichnungen, indem man das KiCad-Projekt zu der Platinen, an der man gerade arbeitet, betrachtet. Dazu öffnet man zunächst die Projektdatei (.kicad_pro). Aus der Kicad-Projektansicht kann man dann den Schaltplan und das Board mit einem Doppelclick öffnen. Wenn man die Dateien so öffnet, sind Schaltplan und Board verknüpft. D.h.: Klickt man im Schaltplan / Board auf ein Bauteil, so wird dieses Bauteil automatisch auch im Bard / Schaltplan hervorgehoben. So versteht man leichter, welche Aufgabe ein bestimmtes Bauteil auf dem Board hat.

Es empfiehlt sich, die Platinen in der folgenden Reihenfolge zu bestücken:

  • Spanngsversorgung (KiCad-Projekt power-schmal). Diese Platine wird später benötigt, um andere Platinen zu testen.
  • Akku und PC. Diese Platinen können einzeln getestet werden. Achtung: Die Platinen sind gleich, sie unterscheiden sich jedoch in der Farbe der LEDs und den Widerständen R2 und R2 (vgl. Schaltplan sowie Bonsai.jpg)
  • Speicher
  • Ein/Takt/Reset. Nun können alle bisher gebauten Platinen gemeinsam getestet werden. Man verkabelt die Platinen. Dann kann man mit den Kippschaltern Zahlen eingeben, diese Zahlen speichern und anschließend wider auf den Datenbus schreiben.
  • restliche Platinen

Platine Ein/Takt/Reset

Von dieser Platine gibt es eine neue Version. Im Bild Bonsai.jpg ist noch die alte Version abgebildet. In der neuen Version wird der Takt von einem Mikrocontroller (ATmega48) erzeugt. Dieser Controller muss programmiert werden. Die Programmierung kann direkt in der Schaltung mit Hilfe der 6-poligen Pinleiste erfolgen. Man benötigt dazu einen ISP-Adapter für ATmega-Controller. Der Quellcode befindet sich im Ordner EinTaktReset-src.

Platinen verdrahten

Bei der Verdrahtung kann man sich orientieren

Crimpanleitung für die Steckverbinder Reichelt PSK: https://www.reichelt.de/reicheltpedia/index.php/Crimp_Anleitungen#Crimpen_von_PSK-Kontakten

Als Flachbandkabel kann man alte IDE-Kabel verwenden. Mann muss jedoch einige Leitungen abtrennen und neue Stecker crimpen.

Die Kabelhalter können mit einem 3D-Drucker gedruckt werden. Eine OpenSCAD-Datei befindet sich im Ordner Kabelhalter: Kabelhalter.scad

Spannungsversorgung

Der Bonsai läuft mit einer Gleichspannung von 5V. Es mehrere Möglichkeiten, wie man diese Spannung bereitstellen kann:

  • Man verwendet ein Festspannungsnetzteil, das 5V ausgibt. Aus Lochrasterplatinenmaterial baut man eine Platine, auf der sich eine Buchse für das Netzteil sowie sechs 2-polige Steckerleisten für 2-polige PSK-Stecker befinden (pro Platine eine Steckerleiste).
  • Man baut eine kleine Platine mit einem Festspannungsregler (7805). Dazu kann man z.B. die Platine im Ordner power-schmal verwenden. Diese Platine benötigt eine Eingangsspannung, die irgendwo zwischen ca. 7V und ca. 15V liegen sollte. Dazu kann man z.B. ein Labornetzgerät verwenden. Das Labornetzgerät hat gegenüber einem Steckernetzteil den Vorteil, dass man die Stromstärke an dem Netzteil ablesen kann und so eine kontrolle hat, ob der Bonsai richtig funktioniert. Bei dem vollständigen Bonsai liegt die Stromstärke (je nach dem, wie viele LEDs gerade leuchten und welche Vorwiderstände für die LEDs verwendet wurden) bei ca. 50mA - 300mA.

Helligkeit der LEDs

Die Leds sind sehr hell. Bei einem Nachbau könnte man größere Vorwiderstände verwenden. Nach der Anschaffung der LEDs könnte man die Helligkeit einer LED bei verschiedenen Vorwiderständen ausprobieren (Led in Reihe schalten mit Vorwiderstand) und dann festlegen, welchen Vorwiderstand man verwendet.

Bei LEDs, die von einem Pin eines 74HCXX getrieben werden, sollte der Vorwiderstand mindestens 600Ohm betragen, wenn man innerhalb der Empfehlungen von TI bleiben möchte (vgl. Issue #5). Dies gilt jedoch nicht für LEDs, die von einem 74HC540 oder 74HC541 getrieben werden, da diese beiden ICs Leistungstreiber sind.

Parts

332
QtyValueFootprintReferences
216bonsai_Led_Small_Platzhalterbonsai:LED_Diodenmatrix_PlatzhalterD100, D101, D102, D103, D104, D105, D106, D107, D108, D109, D110, D111, D112, D113, D114, D115 +200
40Led_Smallbonsai:LED_DiodenmatrixD10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23, D24, D25 +24
22680Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1, R3, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23 +6
22LEDLED_THT:LED_D3.0mmD1, D43, D44, D45, D46, D47, D48, D49, D50, D51, D52, D53, D54, D55, D56, D57 +6
8100nCapacitor_THT:C_Disc_D10.0mm_W2.5mm_P5.00mmC2, C3, C4, C5, C6, C7, C8, C9
4Conn_01x02Connector_Molex:Molex_KK-254_AE-6410-02A_1x02_P2.54mm_VerticalJ2, J5, J7, J9
3Conn_01x04Connector_Molex:Molex_KK-254_AE-6410-04A_1x04_P2.54mm_VerticalJ1, J6, J8
274HC138Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU2, U3
274HC374Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU5, U6
274HC541Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU7, U8
2Conn_01x03Connector_Molex:Molex_KK-254_AE-6410-03A_1x03_P2.54mm_VerticalJ3, J4
1100uCapacitor_THT:CP_Radial_D8.0mm_P2.50mmC1
11kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR2
174HC240Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU4
174LHC161Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU1
1DDiode_THT:D_A-405_P10.16mm_HorizontalD2
1Q_PNP_BCEPackage_TO_SOT_THT:TO-92_Inline_WideQ1
1R_PACK8BUSSED 10KPackage_SIP:SIP9_Housing_BigPadsRP1
1R_PACK8BUSSED 10kPackage_SIP:SIP9_Housing_BigPadsRP2

The 331 most common of 332 parts.

More from michAtEl/Bonsai-Modellcomputer

6
  • 2 layers100 × 160 mmBefehle, the printed circuit board in 3D

    Befehle

    michAtEl/Bonsai-Modellcomputer

    Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

    78 parts2GPL-3.0
  • 2 layers100 × 160 mmSpeichermodul, the printed circuit board in 3D

    Speichermodul

    michAtEl/Bonsai-Modellcomputer

    Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

    70 parts2GPL-3.0
  • 2 layers100 × 160 mmAkku, the printed circuit board in 3D

    Akku

    michAtEl/Bonsai-Modellcomputer

    Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

    60 parts2GPL-3.0
  • 2 layers100 × 160 mmEinTaktReset, the printed circuit board in 3D

    EinTaktReset

    michAtEl/Bonsai-Modellcomputer

    Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

    45 parts2GPL-3.0
  • 2 layers70 × 65 mmPower, the printed circuit board in 3D

    Power

    michAtEl/Bonsai-Modellcomputer

    Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

    27 parts2GPL-3.0
  • 2 layers30 × 100 mmPower, the printed circuit board in 3D

    Power

    michAtEl/Bonsai-Modellcomputer

    Es gibt auch eine Simulation des Lerncomputers (https://bonsai.pinyto.de/), die im digitalen Informatik-Schulbuch http://inf-schule.de verwendet wird.

    15 parts2GPL-3.0

Similar boards

  • 4 layers100 × 100 mm2063-Z80, the printed circuit board in 3D

    2063-Z80

    Z80-Retro/2063-Z80

    Retro Z80 CPU Board

    86 parts96
  • 2 layers100 × 100 mmTemp pro, the printed circuit board in 3D

    Temp pro

    CrafterSteve/ESP32_Temp_Con

    An temperture control device, based on ESP32. With custom PCB board, it can fit an ESP32-DevKit as controller, DAC and ADC is done on board, as well as, a 5 to +-12v power supply..

    134 parts
  • 2 layers102.3 × 49.9 mmKempston joystick, the printed circuit board in 3D

    Kempston joystick

    blowback/microbeast_kempston_joystick

    This is the PCB for my tutorial Build your own joystick interface.

    12 parts
  • 2 layersBreadBin, the printed circuit board in 3D

    BreadBin

    c0pperdragon/BreadBin

    A CPU made of 7400 logic on breadboards - inside a bread bin ;-)

    45 parts18
  • 2 layers100 × 100 mmHC MemoryBoard, the printed circuit board in 3D

    HC MemoryBoard

    nasu8151/HC4

    Schematics and board of HC4 E (E means "for Education").

    607 parts8
  • 2 layers299.7 × 198.1 mmCisc-8, the printed circuit board in 3D

    Cisc-8

    nailed-barnacle/Cisc-8-ttl-processor

    A cut-down version of the 8080 processor using HCTTL and including a discrete ALU and instruction decoder

    319 parts1MIT
  • 2 layers99.6 × 99.7 mmRp2c02-isa, the printed circuit board in 3D

    Rp2c02-isa

    taka-tuos/rp2c02-isa

    RP2C02 ISA Card

    49 parts1MIT
  • 2 layers180 × 67.5 mmNEW KANJI ROM, the printed circuit board in 3D

    NEW KANJI ROM

    bml3mk5/S1KanjiRomJIS2

    JIS Level 2 Kanji ROM Card for HITACHI MB-S1

    61 parts

Questions

How big is the Steuerwerk PCB?

It measures 100 × 160 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Steuerwerk use?

332 parts, built around the 74HC541D, 74HC240D, 74HC138 and 74HC374. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Steuerwerk KiCad files?

From the michAtEl/Bonsai-Modellcomputer repository on GitHub, at the commit this page was made from: the board is Steuerwerk/Steuerwerk.kicad_pcb and its schematic Akku-PC/Akku.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Steuerwerk design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).