4×4 Simple Keypad

Es war so um das Jahr 2017 rum als ich feststellte, dass diese kleinen 4×4 Matrix Tastaturen, die man überall auf Ebay oder anderen Chinesisch Quellen nachgeworfen bekommt, wunderbar mit der der Pinbelegung des Arduino Pro Micro passt.

Gleich mal eine Hand voll von beiden bestellt.
Ja die Tastaturen kommen leider mit Pinheadern, falsch herum, aber die kann man ja auch wieder entfernen.

Da die Tastatur nur auf einer Seite Lötbar ist, also zuerst die Pinheader auf der Rückseite wieder einlöten. So dass sie vorne nicht herausschauen. Dann die 8 Pins in die Kontakte 2 bis 9 des pro Micro stecken und mit etwas abstand verlöten.
Den Abstand habe ich so gewählt, dass der Micro USB Port des Arduino auf gleichem Level ist, wie die Platine der Tastatur.

Dazu habe ich aus 3mm Acryl das Gehäuse mit dem CNC Laser geschnitten. 4 Lagen zusammengeklebt und fertig ist der Gewinner von „Nicht schön aber ungeheuer praktisch“.

50 x 77 x 12mm ohne Nippel.

Gut, wir haben dem Kleinen noch nicht gesagt was er tun soll und dafür gibt es sehr viele Anwendungsmöglichkeiten.
Dafür habe ich aber auch gleich mehrere gebaut.

Bsp.:

  • Tastenmacros von aufwändiger Software wie Photoshop
  • Cheatcodes für Spiele
  • 800 Mausklicks in einer Minute, hier ein Tastendruck
  • ein Passwortgenerator
  • häufig genutzte Telefonnummern und Adressen
  • usw.

Für die Umsetzung habe ich die Librarys Keypad.h, Keyboard.h und für die Mausklicks die Mouse.h verwendet. Mehr also den Beispielcode habe ich auch kaum benötigt.

Gibt es Haken? Klar, irgendwas ist ja immer.
Die emulierte Tastatur ist Englisch. Also auch das Layout. Ganz nervig. Z zu Y und so weiter, siehe das Beispiel.

if (customKey == '6') { Keyboard.println("04129 Leipyig"); }

Sollte man Modifiertasten verwenden wollen, ist man auf OSX, Win oder Linux festgelegt für die die Tastatur den Moment vorgesehen ist, sonnst geht sowas hier nicht:

if (customKey == 'D') { Keyboard.press(KEY_LEFT_GUI);
Keyboard.press(KEY_LEFT_ALT);
Keyboard.press('v');
Keyboard.releaseAll(); }

Also ein paar Beschränkungen die man im Hinterkopf behalten sollte, dann geht alles klar.

GRBL Limitboard V1

Es hat mich dann doch gewurm und ich habe mich hingesetzt und das Design der Platine zweiseitig gemach.
Noch einen 2. parallel geschalteten Anschluss für Probe auf der Seite wo auch der USB Anschluss des Arduino sitz.
So ist der Anschluss von außen zugänglich.

Und ab zu JLCPCB in China mit den Gerber Daten.
Bei den günstigen Preisen natürlich gleich eine Hand voll mehr in schwarz bestellt.
Im Zweifel sind es gute Eiskratzer.

Und was soll ich sagen? Es funktioniert. Wie schon bei der selbst gefrästen Platine.

Der parallel geschaltete Anschluss für Probe war so gedacht, dass man sich aussuchen kann, an welchen man die Probe anschließt, Intern oder Extern.
Es hat sich jedoch gezeigt, dass auch 2 angeschloßene Proben kein Problem darstellen.

Das Elend mit den Störungen an den Endstops

Zum betreiben der CNC3018 nutze ich zur Zeit eine Steuerung aus Arduino mit GRBL und CNC Shield.
Hier kommt es inzwischen durch die dichte Bauweise zu übersprechenden zwischen den Leitungen der Schrittmotoren und den Leitungen der Endschalter an den Achsen. Folglich, wenn die Schrittmotoren laufen löst sofort ein Endschalter aus. Ein Betrieb ist somit mit Endschaltern nicht möglich.
Diese wurden vorerst zum Betrieb deaktiviert.

Lösungsversuche
1. Versuch:
Ich habe an den Microschaltern der Endstops an den 3. Pol (NC) ein + Leitung angebracht, so dass nach Theorie die Sensorleitung so lange der Endschalter nicht ausgelöst ist, immer 5 Volt anliegen. Pustekuchen. Es lösen immer noch fremdinduzierte Signale die Endschalter in der Steuerung aus. Zusätzlich, habe ich nicht bedacht, das am CNC Shield Signale für + und – einer Achse Ein und das Selbe sind. Das hat zur Folge, dass wenn man einen der mechanischen Endschalter auslöst, auf der Signalleitung GND angelegt wird, während an dem anderen Endschalter an der selben Signalleitung +5V anliegen. Kurzschuss.
Das hat sogar mein am Arduino angeschloßenes Macbook abstürzen lassen.

2. Versuch:
Induktiver Näherungsschalter als Endschalter.
Hier TTL 5V kompatibel vom Typ NPN – NO.
Im Prinzip arbeiten diese wie ein Metallsuchgerät. Durch die kleine Bauform sind die Abstände, in denen Metall erkannt wird, relativ klein. Hier bei diesem Modell mit 12mm Durchmesser sind Metalle in 0 … 4mm Entfernung erkennbar.
Auslösen mit sich nähernden Metall wird erkannt, Prima.
Störung wird noch immer induziert sobald die Schrittmotoren laufen, NICHT Prima.

3. Versuch:
Alle Leitungen werden in Kupferfolienband eingewickelt. Das Band von jeder Leitung am CNC-Shield an GND angeschossen.
Sieht schick aus, macht die Leitungen sehr Steif und Unhandlich.
Auswirkungen sind nicht ersichtlich. Fail.

Die Lösung:
Da die Ströme die in den Leitungen induziert werden winzig klein sind, sind sie zwar ausreichend um in einen Arduino als Schaltvorgang erkannt zu werden, aber mit den µA nicht ausreichend um eine LED zum leuchten zu bringen.
Dies macht man sich zu Nutze um Signalleitungen mit Optokopplern zu entkoppeln und somit zu entstören.
Die Anschlüsse auf dem CNC-Shield sind mir eh zu Fummelig und eng gepackt. Somit entschied ich mich ein zusätzliches Shield zu entwerfen welches ich zwischen Arduino und CNC Shield stecke.

Entwurf in Fritzing

Es sind ja nicht viele Bauteile, bei den Optokopplern habe ich zuerst geschaut, welche wir auf Lager haben und bin bei ILD74 gelandet, die gleich 2 Optokoppler in einem DIP Gehäuse mitbringen.
Den größten Platz nehmen die von mir heiß geliebten steckbaren Schraubklemmen in 3,81mm(0,15in) Ausführung ein.

Entkoppelt werden die Leitungen für X, Y, Z, und Probe welches für Nullpunktsensoren verwendet wird. X und Y bekommen die Anschlüsse doppelt für jedes Ende der Achse.
Z benötigt dies nicht, da in der Regel nach unten immer das eingespannte Werkzeug im Weg sein sollte bevor irgendein Endschalter auslöst. Z hat also nur oben am Ende der Achse einen Endschalter.
Zu jeder Signalleitung kommen jeweils ein Anschluss für 5V und GND. Somit ist man jederzeit frei in der Wahl seiner Endschalter, ob nun mechanische Microschalter die nur Sig. und GND benötigen würden, oder Lichtschranken oder Induktiver Näherungsschalter.

In Fritzing für die erste Version noch einseitig entworfen, mit 3 Dratbrücken.
Als Gerber Datei ausgegeben und mit der Online CAMsoftware für Platinen https://copper.carbide3d.com dann die G-Codes für die Fräse erzeugt und dann gefräst.
Wer ein mal die Löcher eine selbstgeätzten Platine bohren musste, wird die Fräse an dieser Stelle zu schätzen wissen.

Und ja, Chinaplatinen sind schnell und günstig zu haben. Jedoch nicht so schnell und so günstig wie mit der Fräse Samstag Nacht um 2.
Die erste Version wird wenn sie einseitig zu meistern ist, wahrscheinlich von mir immer selber hergestellt.

GRBL_Opto_Limitshield

Da ist es also die erste Version des GRBL_Opto_Limitshield.
Und was soll ich sagen, es funktioniert. Die Fräse kann jetzt endlich den Maschinennullpunkt setzen (HOME) UND Störungsfrei mit aktivierten Endschaltern an allen Achsen ihre Programme fahren.
Aktuell nutze ich eine gemischte Bestückung der Endschalter. An Y sind mechanische Microschalter und an X und Z sind Induktiver Näherungsschalter.

Technische Daten der Spindel

Die Spindel:

WS55-180-Driver-Controller-Engraving-Machine

Features: 
Brushless, low interference, eliminate sparks and significantly reduce the spark interference to the remote control. Quiet and quiet operation. Long service life, low maintenance costs. 

Technical data: 
Motor parameters brushless spindle: 
Diameter: 55 mm / 2.17 inches. 
Total length: 180 mm / 7.0 inches. 
Operating voltage: 48 VDC. 
Minimum speed: 12500 rpm 

Voltage range: 20-50V DC 
Nominal current: 8A. 
Rated Output: Depends on actual product 
Current limit: Approx. 10A 
Position detection support: for rooms and not induction salt, 120 degree electric angle 
The maximum support speed: depends on the engine itself and the load. 
Normal temperature insulation resistance: >100MΩ 
Insulation resistance: 0.5 kV/min. 
Storage temperature: -20 °C ~ + 65 °C 
Area of application: avoid direct contact with dust, smoke and corrosive gases. 
Temperature: 0-45 °C 
Humidity: <80%, no gluten, no frost. 
Shock: 5.9 m / S2 MAX 
Storage humidity: 0 ~ 95% relative humidity. 
Total weight of metal: 2640 g 

Wiring: 
+: DC + 
-: DC- 
U: Red 
V: blue 
W: Black 
Speed control: 
SV: The potentiometer controls the speed, the feet on both sides of the potentiometer are connected to the power supply and in the ground, while the midfoot is connected to the SV; 
Sports accessories. 
BR: When putting on the soil, the unertia will stop. 
CW / CCW 
F/R: When connecting the low level, CCW 

Box contents: 
1 x spindle motor. 
1 x Motor Controller 
1 x Fixture 
1 x Power Supply 

Update im Bereich CNC

Nach all der vielen Arbeit möchte ich mal ein Update geben.
Wie angekündigt war ich nicht ganz zufrieden mit dem Originalzustand der CNC3018 Fräse.
Und somit entschied ich mich Anfang August für ein Upgrade. Zu dem Zeitpunkt hatte ich keine Ahnung was dann noch kam und wie lange das auch dauert.
Es wurde eine 400W bürstenlose Frässpindel angeschafft und da diese nicht in die original Halterung passt, auch gleich eine neue Z Achse die dann auf den neuen Linearlagern der X Achse ruht.

Die neu Z-Achse kommt voll aufgebaut mit installierten Nema17 1,2A, Z hat jetzt einen möglichen hub von ca. 70mm.
Zwischen Motorhalterung und Z-Achse konstruierte ich noch eine Adapterplatte aus Alu die die unterschiedlichen Lochbilder aufnimmt.

Da die neue Spindel mit der Z-Achse doch ein deutliche mehr an Gewicht auf die Wage bringt waren die gehärteten Führungswellen der X-Achse nicht mehr ausreichend.
Ich ersetzte sie durch HGR15 Linearlager. Der Antrieb der X-Achse blieb. Die Linearlager wurden jeweils mit einer 20×20 Alu Profilstange hinterlegt.

Zwischen den Schlitten der X-Linearlager und der Z-Achse wurde wieder eine Adapterplatte aus Alu gesetzt.

Was man in den Bildern schlecht sieht, ist dass auch die 2 20×20 Stützen auf der die X-Achse befestigt ist, durch 20×40 ersetzt wurde.
Da der Grundrahmen es eh schon anbot, habe ich den Grundrahmen zum Würfel ausgebaut und die Wände mit Acrylplatten versehen, natürlich herausnehmbar. Durch den Kastenrahmen ist das ganze Konstrukt deutlich stabiler geworden. leider auch schwerer.

Ich gebe natürlich keine Ruhe, bis etwas maximal Overengeniert ist.
Die Fräse ist ja jetzt schon schön und gut, aber die Elektronik hinten dran ist nicht schön.
Also wurde das ganze Gerät aufgebockt und es kommt eine Etage für die 2 Netzteile die CNC- und die Spindelsteuerung und ein Bedienpannel darunter.

So sieht sie jetzt aus. Die Änderungen und Arbeiten an der Elektronik passieren innen.
Das Bedienpannel in all seiner Pracht von links gesehen, Hauptschalter, Notschalter, Steuerungsknöpfe für den Progammlauf, darüber Schalter für Zusatzgeräte und die analoger Spindelsteuerung.
Die Bürstenlose 400W Spindel wird durch ein WS55-180 Motor Driver gesteuert. Dazu gehört noch ein 48V Netzteil.

Dies als Zwischenstand, es ist alles noch im Fluß und in Veränderung.

Einfach mal die Fräse halten

Ich fange mal ganz von Vorn an.
Anfang 2019 habe ich mir einen Bausatz der kleinen CNC Fräse von generischen Typ 3018 gekauft.
Damals für rund 300€, heute sind dafür ca. 200€ bei den großen Händlern fällig.

Die technischen Daten (um das mal für mich und die Nachwelt festzuhalten):

  • Effective working area: X*Y*Z=300 * 180 * 45mm; Frame dimension: X*Y*Z=330 * 400 * 240mm.
  • Frame material: Aluminum, PVC, Plastic
  • 775 Spindle:(12-36V)?12V, 3000rpm; 24V, 7000rpm; 36V, 9000rpm.
  • Spindle: 775 spindle motor (12-36V) 24V: 10000r/min
  • Spindle Chuck: 3.175mm
  • Supported system: WWindows XP / Win 7 / Win 8 / Linux
  • Step motor: Fuselage length 34MM, Current 1.33A, 12v. Torque 0.25N/M
  • Drill bits: tip 0.1mm, 20 degree, diameter3.175mm (Contains 10 pcs)
  • Software: GRBL controller
  • The machine can carve wood, plastic, acrylic, PCB CCL, soft metal like copper and aluminum and other materials, but can not carve hard metal, jade and other very hard texture of the items.

Package:
1 x CNC Router Machine
10 xCNC Bits
1 xER11
1 xER11 Extension Rod
4 xCNC Plates
(Come with the instruction and install video & software, please see the USB disk)

Einige Teile, darunter auch die komplett vormontierte Z-Achse, sind 3d gedruckt, was hier in keiner weise stört.
Die Angaben zu dem Spindelmotor sind wie ich beigefügt habe etwas widersprüchlich. Das Netzteil bringt 24V, wo jetzt offen ist, ob das jetzt 7000 oder 10.000 r/min sind.
Die 775er Motoren werden einzeln mit 80 – 288W angepriesen, ich denke mal, mehr als 80W wird dieser nicht bringen.

Als der Bausatz ankam, war vom Start weg das Steuerungsboard tot.
Es wurde beim Händler bemängelt, der angeblich auch Ersatz verschickt hätte, nur es kam nichts an.
Ich habe dann zur Steuerung ein CNC Shield (grbl Board) für einen Arduino verwendet.
Da ich das Gerät mit einem Mac ansteuere war mir die auf einer MiniCD beigelegte Software eh Egal.
Sowas Programmieren die in China nicht.
Angesteuert wird mit OpenBuilds CONTROL welches es für alle Systeme gibt.
Als CAM verwende ich OpenBuilds CAM, Fusion 360 und Carbide Create je nach Bedarf.

Das Gerät ist mit seinen 330 * 400 * 240mm handlich klein, und kann jederzeit umhergetragen werden.
Bei Nichtgebrauch hänge ich es im Eigenbaukombinat auf 2 Schrauben an die Wand.
Die Fräse ist Barbone, weder Endstops, noch verschieden große ER11 Spannhülsen sind dabei, dafür arbeitet sie aber recht genau. Es wurden schon Platinen Isolationsgefräst oder ein Prägestempel für das Projekt Lederbox.
Endstops und ein Satz ER11 Spannhülsen wurden nachgeordert.
Bisher wurden Acryl, Holz und Platinen gefräst.

Beim fräsen der Platinen ist aufgefallen, dass selbst mit 0,1mm Gravursticheln nur mindestens 0,4mm breite Nuten gezogen werden können. Bei SMD Pads kann es nicht fein genug sein. Ich habe da ein Eiern der Welle des Spindelmotors im Verdacht, der darüberhinaus auch sehr laut ist.

Bei mir bleib selten ein Stein auf dem anderen, darum werde ich in Zukunft einige Veränderungen an der Fäse vornehmen und Schwachpunkte ausräumen.

100% Hingabe, Wolf-Manufaktur

Ich habe ja einen Faible für besondere Drucksachen, mag den UV Druck wie auch Letterpress.
Bisher ist es beim mögen geblieben, konnte dahingehen jedoch noch nie Hand anlegen.
Wie es aussieht, wenn Menschen die im Druckbereich arbeiten 100% Hingabe zu ihrer Arbeit zeigen, kann man bei der Wolf-Manufaktur sehen.
Neben all den feinen Veredelungsmöglichkeiten und Verarbeitungsarten, die man bei der Wolf-Manufaktur anbietet, verstehen sie auch ansprechend auf ihrer Webseite über ihre Arbeit zu schreiben.
Und das sie ihr Handwerk beherrschen, beweist unter anderen auch der gewonnene German Design Award 2018.

Anstatt mit der Kettensäge, die Kettensäge auseinandernehmen

Es gibt ja so einige Auseinandernehmberichte, aber der von Professor Charles bei http://www.etotheipiplusone.net/?p=4187 ist durchaus kurzweilig geschrieben.

Detailliert nimmt er eine Akkukettensäge eine bisher für Billigprodukte verschrieene US Handelskette auseinander.

Diese Kettensäge lässt sich zwar durchaus auch unter Günstig einordnen, gibt aber beim sezieren so einige hochwertige Innereien preis.

100% Hingabe, David A. Smith

Zu sagen David A. Smith macht nur Schilder, wäre weit untertrieben. Nein, Smith ist einer der letzten Meister einer längst vergessenen Handwerkskunst.

Er schleift und bemalt Glasscheiben und Schilder nach alter Tradition verziert sie mit Silber oder Blattgold und lässt jedes mal ein wunderschönes Kunstwerk entstehen.

David A. Smith gibt alles wenn er wieder ein neues Projekt vor der Nase hat.
Es geht um Perfektion, um Handwerk, nicht um das schnell fertig werden.

Via Hackaday

bitbloq

Bildsc54
Heute stelle ich mal bitbloq vor, eine blockbasierende Programmierumgebung wie z.B. Scratch für den Arduino.
In seiner Benutzung noch ein wenig eingeschränkt, aber auf einen guten Weg.
Ich hoffe gerade im Bereich Sensoren tut sich da in Zukunft noch ein wenig.