Projects/Dagobert: Difference between revisions

From Hackerspace Amersfoort
Jump to navigation Jump to search
(Created page with "{{Project |name=Dagobert |start=2017/03/15 |contact=Linor, |info=Administratiesysteem voor Lasercutter |status=Alpha }}")
ย 
No edit summary
Line 6: Line 6:
|status=Alpha
|status=Alpha
}}
}}
==Intro==
Recent is er een [[Projects/Laserbuis_fundraiser|fundraiser]] gestart om weer een nieuwe buis voor de [[Lasercutter]] te kopen. Reden voor deze 'crowdfunding' is dat er niet voldoende geld op het bank account van de lasercutter is gekomen om een nieuwe buis aan te schaffen. Dit is deels te wijten aan de korte levensduur van onze afgelopen buizen, maar ook doordat niet al het gebruik goed is bijgehouden.
Om dit in de toekomst te voorkomen, en omdat de vooruit betaalde uren van deย  [[Projects/Laserbuis_fundraiser|fundraiser]] ook goed bijgehouden moeten worden ben ik begonnen aan een automatische registratie van de gebruikte tijd, vergelijkbaar met Graaf Tel van Revspace. Als uitbreiding op dit systeem gaat gebruik gemaakt worden van de iButton van de deelnemers om de lasercutter te ontgrendelen en het gebruik van de laser te koppelen aan een persoon.
==Beoogde opzet==
Het bestaande safety board wordt uitgebreid met een [http://www.ebay.com/itm/iButton-probe-reader-with-LED-metal-casing-/112052064551 iButton reader] en aangesloten de 'laser on' en 'exhaust enable' pins op de LAOS (dit laatste is geen foutje, althans, niet van ons maar van de LAOS firmware). Hierop staat tijdens een job een PWM signaal waardoor we kunnen zien wanneer een job begint en eindigt. Daarnaast zal vanuit het safety board ook de LAOS interlock worden geschakeld. Extra toevoeging is een temperatuur sensor om de temperatuur van het koelwater bij te houden, en in een latere fase wellicht het starten van een nieuwe job bij te hoge temperatuur te blokkeren (hiervoor moet eerst data verzameld worden).
Het safetyboard zal via serieel communiceren met een Raspberry/Orange PIย  om unlock instructies te ontvangen, en start/stop/temperatuur events door te geven. Deze worden vervolgens na een wat permanentere plek doorgestuurd (VM?) om in de administratie te worden verwerkt, en idealiter ook rechtstreeks af te schrijven van het revbank account van de betreffende gebruiker.
==Research==
===Laser signalen===
Een van de eerste zaken die nodig was om dit systeem mogelijk te maken is dat we kunnen bepalen wanneer de laserjob begint en eindigt. Hiervoor heb ik samen met Jeroen een tweetal osciloscopen aangesloten op header pins op het LAOS board. Uiteindelijk is hier uitgekomen dat de Laser ON en Exhaust Enable pin de bruikbare PWM signalen genereren. Wat wel belangrijk om rekening mee te houden is dat de laser on ook langere tijd on kan zijn, bijvoorbeeld bij het snijden van een lijn.
===iButton reader===
Is al eerder gebruikt deur systeem, voor de volledigheid hier de functie van de verschillende draden:
{|
|geel||gndled|-
|groen||ledgroen|-
|wit||data|-
|bruin||ledrood|-
|grijs||gnd
|}
===Temperatuur sensor===
De door [[User:mro]] meegebrachte temperatuur sensor is een waterdichte versie van de ds18b20 die ook gebruikt is in de [[Projects/Arduino_Workshop_for_Beginners|Arduino workshop]]. Informatie en code was hier dus ook al voor beschikbaar.
==Proefopstelling==
Omdat werken aan het safetyboard in de lasercutter niet handig is, en met het idee dat als het straks werkt, het niet handig is om de lasercutter buiten bedrijf te moeten stellen tijdens ontwikkelwerk (en ja, ook gewoon omdat het kan), heb ik een ontwikkel versie gemaakt van het safetyboard en componenten. De relais en andere niet na te bootsen apparatuur (zoals voedingen, ledstrips, waterkoeling e.d.) zijn vervangen door een rij met LEDs zodat makkelijk gezien kan worden welke al zijn ingeschakeld.
Simulatie van het laser gebruik wordt gedaan met een extra Arduino Pro mini, zodat de software op de Arduino Mega exact hetzelfde kan blijven als in de lasercutter zelf.
==TODO==
* Pro Mini programmeren voor het genereren van de laser signalen en pulsen van de watermeter
* Software schrijven voor het safetyboard
* Raspberry/Orange PI inrichten en software bouwen
* VM oid regelen waar de administratie naar toe kan schrijven en van waaruit ook revbank aangesproken kan worden

Revision as of 14:46, 22 March 2017


Project Dagobert
Name Dagobert
Start 2017/03/15
End
Contact Linor
Website
Information Administratiesysteem voor Lasercutter
Status Alpha


Intro

Recent is er een fundraiser gestart om weer een nieuwe buis voor de Lasercutter te kopen. Reden voor deze 'crowdfunding' is dat er niet voldoende geld op het bank account van de lasercutter is gekomen om een nieuwe buis aan te schaffen. Dit is deels te wijten aan de korte levensduur van onze afgelopen buizen, maar ook doordat niet al het gebruik goed is bijgehouden.

Om dit in de toekomst te voorkomen, en omdat de vooruit betaalde uren van de fundraiser ook goed bijgehouden moeten worden ben ik begonnen aan een automatische registratie van de gebruikte tijd, vergelijkbaar met Graaf Tel van Revspace. Als uitbreiding op dit systeem gaat gebruik gemaakt worden van de iButton van de deelnemers om de lasercutter te ontgrendelen en het gebruik van de laser te koppelen aan een persoon.

Beoogde opzet

Het bestaande safety board wordt uitgebreid met een iButton reader en aangesloten de 'laser on' en 'exhaust enable' pins op de LAOS (dit laatste is geen foutje, althans, niet van ons maar van de LAOS firmware). Hierop staat tijdens een job een PWM signaal waardoor we kunnen zien wanneer een job begint en eindigt. Daarnaast zal vanuit het safety board ook de LAOS interlock worden geschakeld. Extra toevoeging is een temperatuur sensor om de temperatuur van het koelwater bij te houden, en in een latere fase wellicht het starten van een nieuwe job bij te hoge temperatuur te blokkeren (hiervoor moet eerst data verzameld worden).

Het safetyboard zal via serieel communiceren met een Raspberry/Orange PI om unlock instructies te ontvangen, en start/stop/temperatuur events door te geven. Deze worden vervolgens na een wat permanentere plek doorgestuurd (VM?) om in de administratie te worden verwerkt, en idealiter ook rechtstreeks af te schrijven van het revbank account van de betreffende gebruiker.

Research

Laser signalen

Een van de eerste zaken die nodig was om dit systeem mogelijk te maken is dat we kunnen bepalen wanneer de laserjob begint en eindigt. Hiervoor heb ik samen met Jeroen een tweetal osciloscopen aangesloten op header pins op het LAOS board. Uiteindelijk is hier uitgekomen dat de Laser ON en Exhaust Enable pin de bruikbare PWM signalen genereren. Wat wel belangrijk om rekening mee te houden is dat de laser on ook langere tijd on kan zijn, bijvoorbeeld bij het snijden van een lijn.

iButton reader

Is al eerder gebruikt deur systeem, voor de volledigheid hier de functie van de verschillende draden:

geel - groen - wit - bruin - grijs gnd

Temperatuur sensor

De door User:mro meegebrachte temperatuur sensor is een waterdichte versie van de ds18b20 die ook gebruikt is in de Arduino workshop. Informatie en code was hier dus ook al voor beschikbaar.

Proefopstelling

Omdat werken aan het safetyboard in de lasercutter niet handig is, en met het idee dat als het straks werkt, het niet handig is om de lasercutter buiten bedrijf te moeten stellen tijdens ontwikkelwerk (en ja, ook gewoon omdat het kan), heb ik een ontwikkel versie gemaakt van het safetyboard en componenten. De relais en andere niet na te bootsen apparatuur (zoals voedingen, ledstrips, waterkoeling e.d.) zijn vervangen door een rij met LEDs zodat makkelijk gezien kan worden welke al zijn ingeschakeld.

Simulatie van het laser gebruik wordt gedaan met een extra Arduino Pro mini, zodat de software op de Arduino Mega exact hetzelfde kan blijven als in de lasercutter zelf.

TODO

  • Pro Mini programmeren voor het genereren van de laser signalen en pulsen van de watermeter
  • Software schrijven voor het safetyboard
  • Raspberry/Orange PI inrichten en software bouwen
  • VM oid regelen waar de administratie naar toe kan schrijven en van waaruit ook revbank aangesproken kan worden