Departement Technische Wetenschappen Gegradueerde in elektriciteit Optie Elektronica
Ontwikkeling van een geautomatiseerd tapsysteem
CAMPUS Geel
Rob Van der Vloet
Academiejaar 2005-2006
De houder van dit diploma is gerechtigd tot het voeren van de titel van Bachelor
2
WOORD VOORAF De ontwikkeling van dit tapsysteem is een uitdaging geweest. Zonder enig idee hoe het resultaat er zou uitzien ben ik aan deze opdracht begonnen. Alleen had ik deze opdracht nooit kunnen realiseren. Vandaar wil ik een woord van dank richten aan de volgende mensen. Ik wil discotheek Reflex NV met al hun personeel bedanken voor het ter beschikking stellen van het al het materiaal. Met geduld hebben zij geholpen waar nodig. Mijn dank gaat ook uit naar Dhr. Mertens J. voor de hulp bij het installeren van alle toestellen. Ook wil ik een woord van dank richten aan mijn mentor De Backer K. en docent Cambré L. voor hun hulp bij het uitwerken van deze opdracht en voor de informatie over Visual Basic. Zonder Dhr. Kempeneers K. zou de realisatie op vlak van microcontrollers niet gelukt zijn. Ten slotte wil ik ook mijn ouders, vriendin en vrienden bedanken voor hun steun en motivatie. Zonder hen zou dit eindwerk nooit tot het gewenste resultaat zijn gekomen. Rob Van der Vloet
3
SAMENVATTING In een discotheek zoals Reflex, is de verkoop van de verschillende dranken uitgebreid. Er is niet één, maar verschillende togen waar drank verkocht wordt. Neem daar dan nog eens bij dat er een gevarieerd aanbod van drank is, en je begrijpt dat dit een hele bedrijvigheid met zich meebrengt. Het is dus noodzakelijk om een goede structuur met de nodige beveiligingen hier in te brengen. Met de ontwikkeling van dit systeem worden hier een groot aantal problemen opgelost. De fouten die obers maken, al dan niet opzettelijk, worden hier opgevangen of verholpen. Telkens een ober een consumptie tapt zal dit automatisch gebeuren. Met een persoonlijke kaart meldt de ober zich aan bij het gewenste toestel. Zo maakt hij zichzelf bekend aan het systeem en kan een controle uitgevoerd worden. Omdat het systeem geautomatiseerd is, wordt telkens dezelfde hoeveelheid drank getapt bij eenzelfde consumptie. Het tapsysteem slaat ook al de acties van de obers op in een database. Een snelle controle van de obers is dus mogelijk. Maar ook een simpele weergave van hoeveel er van elke drank getapt is, zorgt voor een makkelijke controle van de stockvooraad. Het systeem wordt gestuurd door computers met de nodige hardware uitbreidingen. Al deze toestellen zijn niet duur en kunnen dus snel en makkelijk vervangen worden. Door deze eigenschap kan je een reserve set snel toevoegen aan het systeem. Verder zijn er nog een aantal kleinere voordelen. De totaalprijs van een bestelling die op het scherm getoond wordt is een eigenschap die de obers zeer appreciëren. De lay-out van het scherm is ook beter uitgewerkt en mooier. Alhoewel we hier spreken over een testversie, is dit al een geslaagd project.
4
INHOUDSTAFEL ALFABETISCHE LIJST VAN GEBRUIKTE AFKORTINGEN .................... 6 INLEIDING .................................................................................................. 7 1
HET BEDRIJF ............................................................................................. 8
1.1 1.2 1.3
Gegevens ................................................................................................... 8 Geschiedenis ............................................................................................. 8 Situering van de opdracht ........................................................................ 8
2
UITWERKING VAN DE OPDRACHT........................................................ 10
2.1 2.2 2.3
Inleiding.................................................................................................... 10 Server ....................................................................................................... 10 Client......................................................................................................... 10
3
VISUAL BASIC ......................................................................................... 11
3.1 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.3 3.4
Inleiding.................................................................................................... 11 Verschil tussen VB6 en VB.net............................................................... 11 Object georiënteerd programmeren........................................................... 12 Velden, eigenschappen, methoden en gebeurtenissen............................. 12 Inheritance................................................................................................. 12 Datatypes .................................................................................................. 12 Multithreading ............................................................................................ 13 .NET Framework ....................................................................................... 13 OLEDB ...................................................................................................... 13 ADO........................................................................................................... 15
4
ACCESS.................................................................................................... 16
4.1 4.2 4.3 4.4 4.5 4.6
Inleiding.................................................................................................... 16 Tabellen .................................................................................................... 16 Query’s ..................................................................................................... 17 Formulieren.............................................................................................. 18 Rapporten................................................................................................. 18 Relaties tussen tabellen.......................................................................... 19
5
DE CLIENT................................................................................................ 20
5.1 5.2 5.2.1 5.2.2 5.2.3 5.2.4 5.3 5.3.1 5.3.2 5.3.3 5.3.4
Inleiding.................................................................................................... 20 De taptoestellen....................................................................................... 20 Postmixer................................................................................................... 21 Tapkraan ................................................................................................... 21 Sterke drank ring ....................................................................................... 22 Sturing voor sterke drank........................................................................... 23 Aanmelden van obers ............................................................................. 25 Kaartlezer .................................................................................................. 25 Wiegand naar RS232 omvormer ............................................................... 25 Drukknop ................................................................................................... 27 Controlelamp ............................................................................................. 27
5
5.4 5.4.1 5.4.2 5.4.3 5.5 5.6 5.6.1 5.6.2 5.6.3 5.6.4 5.6.5
Sturing van het systeem ......................................................................... 29 Computer interface kaart ........................................................................... 29 Relaisblok .................................................................................................. 30 Client PC ................................................................................................... 30 Voeding .................................................................................................... 30 Software ................................................................................................... 32 Uitlezen van de Wiegand naar RS232 omvormer...................................... 32 Werken met de K8000 en zijn I/O poorten................................................. 33 Communicatie met de server m.b.v. Sockets ............................................ 34 Wegschrijven van data op de harde schijf ................................................. 37 Layout en werking ..................................................................................... 39
6
DE SERVER.............................................................................................. 43
6.1 6.2 6.2.1 6.2.2 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.4
Inleiding.................................................................................................... 43 Software van de server ........................................................................... 43 Koppeling met de database ....................................................................... 43 Layout en werking ..................................................................................... 45 Database................................................................................................... 46 Tabellen..................................................................................................... 47 Query’s ...................................................................................................... 48 Rapporten.................................................................................................. 49 Formulier ................................................................................................... 49 Applicatie voor instelling ........................................................................ 50
7
AANPASSINGEN EN VERBETERINGEN ................................................ 51
7.1 7.2 7.3 7.4
Inleiding.................................................................................................... 51 Koppeling met de database .................................................................... 51 Aansluiting van meerdere clients........................................................... 51 Automatisch opstarten van het systeem............................................... 52 BESLUIT ................................................................................................... 53 BIJLAGE ................................................................................................... 54 LITERATUURLIJST .................................................................................. 59
6
ALFABETISCHE LIJST VAN GEBRUIKTE AFKORTINGEN AC ADO API CD CLR DC DOS EXE I/O IC ID ISO LED ODBC OLE PC RAM RS232 SQL USB UTP VB
Alternating current ActiveX Data Objects Application Program Interface Compact disk Common Language Runtime Direct current Disk Operating System Executable Input/Output Integrated Circuit Identification International Standards Organisation Light Emitting Diode Open DataBase Connectivity Object Linking and Embedded Personal Computer Random Access Memory Recommend Standard number 232 Structured Query Language Universal Serial Bus Unshielded Twisted Pair Visual Basic
7
INLEIDING In een wereld waar de technologie nooit stil staat, is het nodig om regelmatig te vernieuwen. Vooral op vlak van automatisering is het noodzakelijk om tijdig oude ontwerpen in een nieuw kleedje te steken. Ook gebruik maken van nieuwe toestellen kan je niet meer achterwege laten als je modern wil blijven. In de wereld van café’s, bars, discotheken, enz. is deze vooruitgang ook voelbaar. Een betere geluidsinstallatie, vernieuwde lichteffecten, het behoort allemaal tot de mogelijkheden. Met dit eindwerk wil ik een vernieuwing van het tapsysteem ontwikkelen. Discotheek Reflex gaf mij de mogelijkheid om testen uit te voeren in hun restaurant Restoflex. Obers kunnen nooit voor elke consumptie dezelfde hoeveelheid afmeten. Om het stelen van obers tegen te gaan is een automatisering handig. Ook voor een snelle en makkelijke controle van stockvooraad is het noodzakelijk dat alle verkochte consumpties worden bijgehouden. Met het gebruik van de vaste taptoestellen die Restoflex bezit, heb ik een systeem bedacht dat met de nodige beveiliging en controle een tapsysteem automatiseert.
8
1
HET BEDRIJF
1.1
Gegevens
Reflex NV Boskant 18 2260 Westerlo www.reflexclub.be
[email protected] 1.2
Geschiedenis
Discotheek Reflex werd geopend op 10 oktober 1986. Na enkele maanden kwam er al een eerste uitbreiding, de toen legendarische (maar ondertussen reeds verdwenen) “draaiende muur”. In mei 1988 volgde een 2de uitbreiding. “Club reflex High Level” zag het eerste levenslicht. Ook volgde nog de aanleg van een zwembad met terras achteraan Relfex, waar sindsdien de jaarlijkse Beachparty georganiseerd wordt. Na verschillende herinrichtingen en vernieuwingen die de jaren erop volgen krijgt Reflex in 1995 het kwaliteitscertificaat ISO 9002. Hiermee treden ze als voorlopig laatste toe tot een groep van 7 “quality disco’s”. Eind 2000 krijgt het restaurant “Restoflex” een oosters interieur en wordt de toegankelijkheid verbeterd. Tot de dag van vandaag hebben deze wijzigingen toegedragen aan het succes van discotheek Reflex.
1.3
Situering van de opdracht
Discotheek Reflex bestaat uit 5 grote blokken: De Mainhall, de club, het zwembad met terras, de lounge en een restaurant Restoflex. Al deze blokken zijn voorzien op de mogelijkheid om drank aan te schaffen. Omdat het hier over een discotheek gaat, is het wel duidelijk dat er ook een rijk aanbod van verschillende dranken is. Een groot aantal mensen, de obers, voorzien de klanten van deze dranken. Begrijpelijk is ook dat door de omvang van deze onderneming, een goede structuur nodig is. De juiste hoeveelheid moet getapt worden, een juiste prijs berekend, enz.. Om dit allemaal goed te laten verlopen is een systeem ontwikkeld dat deze acties automatiseert. Obers zijn uiteraard nog wel nodig om gebruik te maken van dit systeem, maar elke actie wordt opgeslagen. Zo is het gemakkelijk het overzicht te behouden over de uitgebreide werking. Maar dat is niet het enige voordeel van een geautomatiseerd systeem. Ook een controle is mogelijk van alle obers om diefstallen of onregelmatigheden op te sporen.
53
BESLUIT Een geautomatiseerd tapsysteem is bijna noodzakelijk in een discotheek met de omvang van Reflex. De controle op obers, de stockvoorraad, de hoeveelheden, … Ze moeten allemaal bijgehouden worden als de discotheek een degelijke werking van het drankgebeuren wil garanderen. Met de client – server structuur is het tapsysteem zeer flexibel. Een snelle wissel van een client of server toestel is mogelijk aangezien deze hardware niet zo omvangrijk is. Omdat het systeem niet duur is, kan makkelijk een complete reserve set aangekocht worden. Over het algemeen ben ik zeer tevreden over de werking van de testversie. Buiten het feit dat dit een project is waar je kan blijven verbeteren, werkt deze versie goed. Na enkele avonden testen, zijn ook de mensen van Reflex tevreden met dit systeem. Het systeem kan dus onmiddellijk in gebruik genomen worden, maar omwille van de verbeteringen die ik nog wil doorvoeren, zal dit niet gebeuren.
54
BIJLAGE Bijlage 1: Schema en afbeelding van de K8000
55
56 Bijlage 2: Schema en afbeelding van de K8055
57
58
Bijlage 3: Specificaties van de miniprox
59
LITERATUURLIJST Frans, R. (2004). Acces 2003 1/3. Geel: Campina Media vzw. Frans, R. (2001). Leren programmeren met Visual Basic 6.0. Geel: Campina Media vzw. Microsoft. Informatiebronnen voor .NET Framework-ontwikkelaars. Gevonden op 7 augustus 2005 op het internet. http://www.microsoft.com/netherlands/msdn/resources/default.aspx Microsoft. Zoeken in de knowledge base van microsoft. Gevonden in 2000 op het internet. http://www.microsoft.com/netherlands/msdn/support.aspx Taltech. Informatie over het RS232 protocol. Gevonden op 11 maart 2006 op het internet. http://www.taltech.com/resources/intro-sc.html#232c