OpenVending

Aus PILARKTO.ORG Open Laboratory e.V.
Wechseln zu: Navigation, Suche
Datei:Open Vending-mini.jpg
{{{Bildbeschribung}}}
Projektstart
Projektleiter Benedikt.schumm
Betreuer
Status Planing
Projektname Open Vending
Bildbeschribung

Inhaltsverzeichnis

Idee

Unser Getränkeautomat hat den Geist aufgegeben. Nun möchten wir die Chance nutzen, und über vorhandene und dokumentierte Schnittstellen den Automat wieder in Gang setzen. Ein neues Feature soll die benutzung über RFID Karten sein.

Unser Getränkeautomat besitzt einen Geldzähler welcher das Protokoll A verwendet.

Anschlüsse

Bezeichnung Ports Beispiel
MDB 6 Polig Beispiel
Executive / Protokoll A 3 / 9 Polig Beispiel

Auswahlhilfe für die Stecker der verschiedenen Automatenschnittstellen http://www.coinco-gmbh.de/files.php?download=56


Begriffe

Bezeichnung Erklärung
Executive Geldzähler
VMC / Vending Machine Controller


Protokolle

Protokoll A / Executive

http://executive-protocol.narod.ru/10102-000304001-PS.pdf

MDB

http://en.wikipedia.org/wiki/Multidrop_bus

Spezifikation

http://www.vending.org/technical/MDB_3.0.pdf

Datasheets

MDB

http://www.bonusdata.net/Products/RS232_MDB/mdb_rs232.htm


Geldzähler

Coinco DEM-A802Ec | Global €

http://www.coinco-europe.com/manuals/Global%20E%20Manual.pdf

Code

https://github.com/bschumm/OpenVending

Executive Protokollanalyse

Serial Monitor

Output

Port geöffnet durch Vorgang "pythonw.exe" (PID: 672) Answer: 01.01.2001 04:23:44.12164

31                                                1               

Request: 01.01.2001 04:23:44.12164 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:23:45.77764 (+0.6563 seconds)

31                                                1               

Request: 01.01.2001 04:23:45.83964 (+0.0625 seconds)

00                                                .               

Answer: 01.01.2001 04:23:46.29264 (+0.4531 seconds)

38                                                8               

Request: 01.01.2001 04:23:46.29264 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:23:46.80864 (+0.5156 seconds)

20 20 20 20 20 20 20 25 25 20 20 24 24 20 20 39          %%  $$  9

Request: 01.01.2001 04:24:28.40264 (+0.0156 seconds)

00                                                .               

Answer: 01.01.2001 04:24:28.16764 (+0.7656 seconds)

31                                                1               

Request: 01.01.2001 04:24:28.16764 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:24:29.66764 (+0.5000 seconds)

31                                                1               

Request: 01.01.2001 04:24:29.66764 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:24:30.33964 (+0.6719 seconds)

31                                                1               

Request: 01.01.2001 04:24:30.33964 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:24:30.46464 (+0.1250 seconds)

31                                                1               

Request: 01.01.2001 04:24:30.46464 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:24:30.48064 (+0.0156 seconds)

31                                                1               

Request: 01.01.2001 04:24:30.48064 (+0.0000 seconds)

00                                                .               

Answer: 01.01.2001 04:24:30.48064 (+0.0000 seconds)

31  

Test Python Script

Output

Python 2.7.7 (default, Jun  1 2014, 14:17:13) [MSC v.1500 32 bit (Intel)]   on win32 Type "copyright", "credits" or "license()" for more information. >>> ================================ RESTART   =============================== >>>  COM2 Status | Answer OK - 0x00
Status | Answer OK - 0x00
ACCEPT DATA | Answer 0x00
 Unknown Command
    Unknown Command
    Unknown Command
    Unknown Command
    Unknown Command
    Unknown Command
    Unknown Command
    Unknown Command
 %  Unknown Command
 %  Unknown Command
    Unknown Command
    Unknown Command
 $  Unknown Command
 $  Unknown Command
    Unknown Command
    DATA SYNC | Answer 0x00
 Status | Answer OK - 0x00  Status | Answer OK - 0x00
 Status | Answer OK - 0x00
 Status | Answer OK - 0x00
 Status | Answer OK - 0x00  Status | Answer OK - 0x00
 Status | Answer OK - 0x00  Status | Answer OK - 0x00
 Status | Answer OK - 0x00  Status | Answer OK - 0x00
 *snip spam*