Kassomat: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
(Bild hinzugefügt, Videos entfernt, da nicht mehr verfügbar)
 
(121 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== WTF ==
+
[[Datei:Kassomat 2022.jpg|mini|rechts|Kassomat]]
Eine selbstgebaute Kassa mit Touchinterface, die (parallel??/ersatz??) zur offenen Kassa im Einsatz sein soll, die verhindern soll dass nicht einfach so mehrere Geldscheine aus der Kassa verschwinden. Zusaetzlich eroeffnen sich angenehme Funktionalitaet wie zB: iButton Credits, automatische Buchhaltung, Lazzzor Jobs erfassen, Barcode Scanner,.. whatnot.
 
  
== Kontakt ==
+
{{Projekt
[[User:Vierlex]] fuehlt sich verantwortlich.
+
|image=KASSOMAT.png
Mailingliste gibt es auch! kassomat@lists.metalab.at
+
|involved=[[User:anlumo]] [[User:m68k]] [[User:ripper]] [[User:phaer]] [[User:hetti]]
 +
|startdate=XX.10.2012
 +
|status=in progress
 +
|wtf=box which changes banknotes into coins
 +
}}
  
== was noch passieren wird... ==
+
== Kassomat ==
* '''22.11.12, ca. 20:00''' treffen sich [[User:ΠTΩ]] und [[User:Vierlex]] und besprechen das Gehaeuse, Interessierte Brainstormer und Skeptiker sind willkommen!
 
* irgendwann mal zamsetzen und Software planen und so
 
  
== was bisher geschah... ==
+
payoutd controls the hardware and feeds events into redis queues where other tools may pick them up.
* '''20.11.12''' Weitere GeldscheinEss- und -ausspuck Loesung [http://www.jcmglobal.biz/en/products/productdetails.aspx?ProdID=VEGA Vega+RC von JCM]. Sowie eine groessere All-in-One Loesung [http://www.ballywulff.de/master.php?var_1=15&var_2=42&var_3=14 MCT 100](beinhaltet den Vega+RC) die man etwas customizen wuerde bzw vielleicht billiger kriegen koennt wenn man bestimmte Features nicht mitbestellt. Grosses Plus ist das bereits vorhandene (wenn auch sehr grosse) Gehaeuse! Fuer beide Items wurde bereits per-Mail angefragt. '''update''' [[User:ΠTΩ]] baut ein tolles Gehaeuse! voll super.
+
Changeomatic listens to events in those redis queues and allows users to change banknotes into coins.
* '''18.11.12''' erstes offizielles Orga Treffen eigentlich nur zum Thema Gehaeuse. Es ist schwerer als gedacht eine kostenguenstige und professionelle Lösung zu finden (zu dem das Budget sich verschmälert hat, siehe unten). Weitere Recherche nach geeignetem Material oder bereits fertigen Boxen nötig.
+
The protocol is documented in the [https://github.com/metalab-kassomat/kassomat-payout/blob/master/docs/overview.md payoutd repository]. People who are interested in implementing a more advanced POS system are very welcome to do so! :)
* <strike>'''WICHTIG''' erstes Organisations treffen in Planung! am '''18.11'''</strike>
+
There is now an [https://github.com/metalab-kassomat umbrella organization] on github which contains all the sub-projects listed below.
* '''14.11.12 (nachtrag)''' ersteigerter NV200 ist NICHT erweiterbar mit einem Smartpayout Modul, daher muss alles neu angeschaft werden. dadurch erhöhen sich die Kosten auf 850€ OHNE Gehaeuse!
 
* '''13.11.12''' Windows und Linux SDK get! (für Cash-Hardware)
 
* '''7.11.12''' erstes UI Brainstorming. gar nicht so einfach. & Piratenpad Update.
 
* '''5.11.12''' you can has http://piratepad.net/CUBI9uXphb (fuer Planung und Organisation) and https://github.com/vierlex/kassomat
 
  
* '''1.11.12''' [[User:Vierlex]] schaut sich die low-level API [http://www.innovative-technology.co.uk//images/pdocuments/sspdoc/GA138%202_0_0.pdf PDF] der Geraete an. NV200 (ohne Smart Payout Modul) um 160€ ersteigert. Hat auch um C Libraries bei [http://www.innovative-technology.co.uk inovative technology] angefragt
+
'''''Please note:''' From 6/2021 on the manufacturer of Smart Hopper (coin unit) and NV200 (banknotes) will no longer provide new currency or firmware updates. No spare parts, too.'' [https://metalab.at/wiki/Datei:Innovative_Technology_Ltd_-_Obsolete_Products_Notification.pdf cf. PDF]
  
== ..und was grad ur wichtig is ==
+
== Kassomat/VM ==
'''GEHÄUSE!'''<br>
 
Derzeit gibt es keinen konkreten Plan zum Gehäuse. Ein bisschen weiter unten findet man die 3 Hardwareteile die man unter ein Dach bringen muss. Ob Metall, Holz, Acryl, Beton, Vermauern oder in einen alten Automaten einbauen.. Wenn jemand eine KOSTENGÜNSTIGE Idee hat, wie und aus welchem Material so ein Gehäuse gestalten kann, immer nur her damit. Rahmenbedingungen:
 
* unter 100€
 
* möglichst schwer.
 
* Komponenten (ausser Laptop) sollten gut zugänglich sein. Komponeten muss man selten aber doch auch auseinander nehmen können.(siehe Datenblatt)
 
* soll nicht leicht/leise aufbrechbar sein.
 
* Platz der Komponenten (wenn nebeneinander gestellt+Laptop-Motherboard oben drauf): ~ 24x40x29 cm (siehe Datenblatt)
 
  
Datenblatt: [[Datei:Kassomat-GehaeuseSpecs.pdf‎|Datenblatt]]
+
Instead of installing a lot of packages and requirements you could opt to use [https://www.virtualbox.org VirtualBox] and [https://www.vagrantup.com Vagrant]. The [https://github.com/metalab-kassomat/kassomat-vm kassomat-vm] repository contains all the necessary files to get a fully provisioned virtual machine (it is even possible to plug the actual hardware into your host and use it from inside the vm).
  
 +
== Components ==
  
Vorschlag von [[Benutzer:anlumo|anlumo]]: [http://www.ebay.at/itm/271105500395?ssPageName=STRK:MESINDXX:IT&_trksid=p3984.m1436.l2649#ht_1655wt_1097 Photoplay SPIRIT Standgerät Geldschein AKZ f.Bastler (eBay)]<br>
+
* '''Changeomatic'''
Leider ist der Versand mit €120 etwas teuer.
+
** [https://github.com/metalab-kassomat/kassomat-changeomatic Source]
[http://www.willhaben.at/iad/kaufen-und-verkaufen/spielewelt/fun-world-photoplay-48144202?adId=48144202 Alternative aus Wien]
+
** Written in Java, can be built (and run) with [https://maven.apache.org/ Maven]
 +
*** build: <code>mvn install</code>
 +
*** run: <code>mvn exec:java -Dexec.mainClass="at.metalab.changeomatic.ChangeomaticMain"</code>
 +
** UI: Graphical Swing Frontend
 +
** libs
 +
*** [http://redisson.org/ Redisson] (Redis client)
 +
*** [https://github.com/FasterXML/jackson Jackson] (JSON library)
  
  
Noch eine Moeglichkeit: [http://www.banktechsafe.hu/index.php?page=shop.browse&category_id=18&option=com_virtuemart&Itemid=65&lang=en Safe] mit sehr guten Massen aber eben teuer, 140é ohne Versandkosten.
+
* '''Maintenance Mode Application'''
 +
** [https://github.com/metalab-kassomat/kassomat-scripts Source]
 +
** Written in Python
 +
*** set the coin levels: <code>./kassomat-set-coin-levels.py</code>
 +
*** count the coins (n.b. '''this will dump all coins through the bottom opening!'''): <code>./kassomat-count-coins.py</code>
 +
** UI: Console interface
 +
** libs
 +
*** [https://pypi.python.org/pypi/redis redis]
  
  
''Einen "Elektronischen Safe" gibts schon [http://www.conrad.de/ce/de/product/777733/Elektronischer-Safe-mit-LCD ab etwa 50 Euro]. Eine beliebig gewählte [http://www.conrad.de/ce/de/product/777734/Dokumenten-Safe-mit-elektronischem-Schloss/0801076&ref=list größere Variante für 109,-]<br /> Ein solcher Preis ist im Selbstbau schwer zu erreichen - und das Ding schließt dann auch richtig.'' --[[Benutzer:Pk|Pk]] 13:09, 5. Nov. 2012 (CET)
+
* '''Payout'''
 +
** [https://github.com/metalab-kassomat/kassomat-payout Source]
 +
** Written in C, can be built with make
 +
** Linux daemon
 +
** [https://github.com/metalab-kassomat/kassomat-payout/blob/master/docs/overview.md JSON API] (accessible via Redis)
 +
** UI: none
 +
** libs
 +
*** [https://github.com/redis/hiredis hiredis] (Redis client)
 +
*** [http://libevent.org libevent2] (Event Dispatching)
 +
*** [http://www.digip.org/jansson/ libjansson] (JSON library)
 +
*** [https://sourceforge.net/projects/libuuid/ libuuid]
 +
*** ITL example code (aka "vendor hardware library")
  
== Hardware ==
 
'''Geldscheinchecker'''
 
* VEGA-RC ('''?é''') --> bereits angefragt
 
** [http://www.jcmglobal.biz/en/products/productdetails.aspx?ProdID=VEGA Herstellerseite] ist eigentlich auch ein 2teiliges Teil, ist im ganzen kleiner als der NV200 und hat dafuer auch weniger Kapazitaet was aber wurscht is. Kann nur eine Waehrung checken
 
*  NV200 (<strike>hat [[User:Vierlex]] auf ebay um '''160€''' ersteigert! </strike>neu: '''450€''') + Smart Payout Modul (neu: '''200€''')
 
** [http://www.coinoperatorshop.com/Banknoten-pruefen-zaehlen-ausgeben/Banknotenleser/Leser/NV200-mit-Smart-Payout.html zum Shop] Diese Machinerie verwaltet Banknoten, hier wird ein zusaetzliches Modul benoetigt um Geldscheine wieder auszuspucken. Unterstuetzt mehrere Waehrungen auf einmal! wtf. aber wer braucht das schon.
 
'''Muenzchecker'''
 
*  Smart Hopper ('''190€''')
 
** [http://www.coinoperatorshop.com/Muenzen-zaehlen-pruefen-ausgeben/Muenzauszahlung/Hopper/Smart-Hopper/Smart-Hopper.htm zum Shop] Kann Muenzen pruefen und retour geben. Auf ebay daweil nicht gesichtet. Gute und auf den ersten Blick auch kostenguenstige Alternative zu herkoemmlichen Hoppern von denen man mehrere braeucht fuer versch. Muenzen.
 
'''Rechenpower'''
 
* <strike>Raspberry Pi ('''35€''') & Touchscreen ('''0€''')</strike>
 
** [[User:overflo]] wuerde einen Touchscreen mit fixen Touchpunkten spenden.
 
* Touchscreen Laptop ('''0€''')
 
** Convertible-Laptop (ohne Gehäuse, jedoch funktionsfähig) vom ebenfalls grosszügigen [[User:reox]].
 
'''GEHAEUSE!'''
 
* Selbstbau? ('''~100€''') --> [[User:ΠTΩ]] mag ein tolles Gehaeuse bauen!
 
hello freunde
 
das was ich machen würde und auch anbieten kann.
 
- rahmen aus systemprofilen aufbauen, damit kannst du die geräte dann auch schön befestigen.
 
- 3mm stahlplatten aus richtig hartem Super-Duplex CrNiMoTi Stahl (Nirosta)
 
+ diese wasserstrahlen oder laserschneiden lassen oder ganz simpel flexen.
 
+ verschweißen + 1 seite offen lassen
 
- rfid oder codeeingabe schloss mit dem eine der wände mit einem innenliegenden servo gelöst werden kann
 
+ wenn der code eingegeben wird oder der rfid an eine stelle gehalten wird (die villeicht keiner
 
          weiß, oder sich auch verändern könnte) wird ein servo geschalten der einen
 
          verriegelungsmechanismus öffnet.
 
+ hier gibt es bestimmt noch eine menge von lösungsansätzen -
 
          weiß nicht ob rfid durch 3mm CrNi noch funktioniert - kann man testen
 
so zum punkt
 
- ich glaube wenn man das design sehr reduziert kann man mit 100€ materialwert durch kommen.
 
- da muss man dann auch den richtigen stahl aussuchen -
 
  da gibts differenzen von 20 - 250 € / kg je nach dem wie gut er veredelt ist.
 
- das ding bekommst du dann auf jeden fall nur noch mit einer flex auf
 
  und da muss man sich ganz schön anstrengen
 
+ ich hab einige stücke 2mm CrNi herum liegen - kann ich mal mitnehmen zum testflexen - haha
 
* bestehenden Automaten schlachten? --> ebay ('''?€''')
 
* MTC100 ('''?€''') --> bereits angefragt
 
** Eine [http://www.ballywulff.de/master.php?var_1=15&var_2=42&var_3=14 All-in-One] Loesung mit viel Zeug(Interface,..) was wir eigenltich nicht brauchen. Inkludiert aber bereits einen VEGA+RC (sehr nice).
 
<br/>
 
'''* Gesamt (zur Zeit): 850€ + ?€ (Gehaeuse)'''
 
<br/>
 
<gallery>
 
File:Kassomat-VegaRC.png‎|[http://www.jcmglobal.biz/en/products/productdetails.aspx?ProdID=VEGA Vega + Vega-RC]
 
File:Meta_kassa_Smartpayout.jpg|[http://www.coinoperatorshop.com/Banknoten-pruefen-zaehlen-ausgeben/Banknotenleser/Leser/NV200-mit-Smart-Payout.html NV200+Smart Payout]
 
File:Meta_kassa_Smarthopper.jpg|[http://www.coinoperatorshop.com/Muenzen-zaehlen-pruefen-ausgeben/Muenzauszahlung/Hopper/Smart-Hopper/Smart-Hopper.htm Smart Hopper]
 
File:Meta_kassa_M912V.jpg|Touchscreen Laptop (ohne Gehäuse) [http://en.wikipedia.org/wiki/Gigabyte_M912 Gigabyte M12V]
 
File:Kassomat-MCT100.jpg‎|[http://www.ballywulff.de/master.php?var_1=15&var_2=42&var_3=14 MCT100 die eierlegende Wollmilchsau]
 
</gallery>
 
  
== Was gibts zu tun? (und wer machts) ==
+
* '''Payout Simulator''' ''for development without the real hardware''
* Gehaeuse? Aus was und wie bauen? Was soll es koennen? Tuer noetig?
+
** [https://github.com/metalab-kassomat/kassomat-payout-simulator Source]
** [[User:Zwax]], [[User:ΠTΩ]], [[User:Hobbes]]
+
** Written in Java, can be built (and run) with [https://maven.apache.org/ Maven]
* Welche Linux Distro auf dem Laptop?
+
*** build: <code>mvn install</code>
* Wie verbindet man Geldcheckhardware mit Laptop?
+
*** run: <code>mvn exec:java -Dexec.mainClass="at.metalab.payoutsim.PayoutSimMain"</code>
** [[User:Vierlex]]
+
** UI: Graphical Swing Frontend
* API von Herstellerfirma checken (haben fuer Linux/C++ auch was)
+
** libs
** [[User:Vierlex]]
+
*** [http://redisson.org/ Redisson] (Redis client)
* Welche Fehlerfaelle gibt es bei der Hardware?
+
*** [https://github.com/FasterXML/jackson Jackson] (JSON library)
* Wie lauft der Bezahlvorgang ab?
 
* Wie schaut die UIX aus?
 
** [[User:anlumo]]
 
* Wie soll die Datenbank ausschauen?
 
* Datenbank Backup Moeglichkeit?
 
* Frontend implementieren
 
** [[User:redplanet]], [[User:Vierlex]]
 
* Backened implementieren
 
** [[User:redplanet]], [[User:Vierlex]]
 
  
== wann fertig? ==
 
  
Wenn es von Core das OK gibt dann schaetze ich ([[User:Vierlex]]) wuerde das ganze ca 4 Monate dauern bis ein funktionierender Prototyp fertig ist. Dieser ist noch nicht fuer den regelmaessigen Betrieb gedacht, erst nach exzessivem Testen. '''ca. Mitte Februar '13'''
+
* '''[http://redis.io/ Redis]'''
 +
** message broker between the different components (Changeomatic, Payout and the Maintenance Mode Application)
 +
** not used as a datastore!
  
== und was kann der dann? ==
+
[[Datei:kassomat-overview.png|500px|thumb|left|Overview of the various components]]
 
 
Der erste Prototyp inkludiert ein Touchinterface mit man ein Getraenk auswaehlen kann. Man kann mit Muenzen oder mit Geldscheinen zahlen und bekommt entsprechend wieder Muenzen und/oder Scheine als Retourgeld zurueck.
 
 
 
Zusaetzlich soll es eine grundlegende Dokumentation (geschriebener Code dokumentiert, wie ist er zu erweitern ) und Wartungsmanual (wie entleere ich das Ding, was tun wenns spinnt) geben.
 
 
 
== zukunftsmusik ==
 
 
 
zeug was man noch tun kann.
 
 
 
* Strichcodeerkennung ueber die Webcam.
 
* Logging der verschiedenen Einnahmen (fuer Buchhaltung interessant und Statistiken: Mate-konsum um welche Uhrzeiten am meisten verkauft?)
 
* Lazzzor Jobs bezahlen
 
* iButton mit Credits
 
* Vinyldrucker Jobs bezahlen
 
* Druckerauftraege bezahlen
 
* Autonome Kassaverwaltung (für div. Kleingruppen zb Fotolab,Werkstatt die über den Kassomat Geld in ihre gemeinsame Kassa einzahlen und sich auszahlen lassen können)
 
* Custom Bezahlauftrag (wieviel/wofuer)
 
  
 
[[Kategorie:Projekte]]
 
[[Kategorie:Projekte]]

Aktuelle Version vom 20. Mai 2022, 22:00 Uhr

Kassomat



Kassomat
KASSOMAT.png
Gestartet: XX.10.2012
Involvierte: User:anlumo User:m68k User:ripper User:phaer User:hetti
Status: in progress
Beschreibung: box which changes banknotes into coins
Shutdownprozedur:
Zuletzt aktualisiert: 2022-05-20


Kassomat

payoutd controls the hardware and feeds events into redis queues where other tools may pick them up. Changeomatic listens to events in those redis queues and allows users to change banknotes into coins. The protocol is documented in the payoutd repository. People who are interested in implementing a more advanced POS system are very welcome to do so! :) There is now an umbrella organization on github which contains all the sub-projects listed below.

Please note: From 6/2021 on the manufacturer of Smart Hopper (coin unit) and NV200 (banknotes) will no longer provide new currency or firmware updates. No spare parts, too. cf. PDF

Kassomat/VM

Instead of installing a lot of packages and requirements you could opt to use VirtualBox and Vagrant. The kassomat-vm repository contains all the necessary files to get a fully provisioned virtual machine (it is even possible to plug the actual hardware into your host and use it from inside the vm).

Components

  • Changeomatic
    • Source
    • Written in Java, can be built (and run) with Maven
      • build: mvn install
      • run: mvn exec:java -Dexec.mainClass="at.metalab.changeomatic.ChangeomaticMain"
    • UI: Graphical Swing Frontend
    • libs


  • Maintenance Mode Application
    • Source
    • Written in Python
      • set the coin levels: ./kassomat-set-coin-levels.py
      • count the coins (n.b. this will dump all coins through the bottom opening!): ./kassomat-count-coins.py
    • UI: Console interface
    • libs


  • Payout
    • Source
    • Written in C, can be built with make
    • Linux daemon
    • JSON API (accessible via Redis)
    • UI: none
    • libs


  • Payout Simulator for development without the real hardware
    • Source
    • Written in Java, can be built (and run) with Maven
      • build: mvn install
      • run: mvn exec:java -Dexec.mainClass="at.metalab.payoutsim.PayoutSimMain"
    • UI: Graphical Swing Frontend
    • libs


  • Redis
    • message broker between the different components (Changeomatic, Payout and the Maintenance Mode Application)
    • not used as a datastore!
Overview of the various components