|
||||||
|
Voortgang ProjectHieronder staat een overzicht van alle uitgevoerde zaken per week, eventueel toegelicht met foto's om keuzes toe te lichten: Week 1Na het opstarten van het project (inrichten projectservers, etc) zijn we begonnen met het bekijken van advertenties op marktplaats. Voor de flipperkast zelf was een budget van ongeveer 200 euro gereserveerd. Na een middagje zoeken hadden we een aantal geschikte flipperkasten voor dit project gevonden. Echter bleek al snel dat een aantal flipperkasten al verkocht waren of dat de prijs op de site niet klopte. Uiteindelijk hadden we met een aanbieder een afspraak kunnen maken. Foto wijkt af van opgehaalde kast, daarvan was de frontplaat niet meer origineel! Na een ochtend testen leek de kast goed te werken. Inderdaad "leek" goed te werken, want de kast wilde niet meer opstarten. Daarnaast moesten er zowieso wat rubbers vervangen worden, want een heel aantal rubbers op het speelveld waren gebroken of de rek was eruit. Op internet zijn we uiteindelijk gestuit op de website van Flipperwinkel.nl. We besloten van de gelegenheid gebruik te maken en naast nieuwe rubbersets ook gelijk informatie te vragen over het probleem. We werden doorgestuurd naar een website met informatie over elektrische problemen met flipperkasten: Pinball Repair Guide De PCB's in de flipperkast. De blauwe draden zitten er origineel niet in, deze zijn door ons er later ingezet om de schakelaars door te meten. Er zitten 4 grote PCB's in de flipperkast. Linksboven zit het MPU Board. Hierop zitten wat controllers die de flipperkast aansturen en komt alle I/O binnen. Rechtsboven zit de Solenoid Driver. Hiermee worden alle spoelen op het speelveld aangestuurd. Linksonder zit de Lightdriver PCB. Hier wordt alle verlichting mee aangestuurd op en om het speelveld. Tenslotte is er nog rechtsonder een Sound Module die voor het geluid zorgt. Week 2Nadat we vorige week de schema's hadden bemachtigd van een soortgelijke kast hebben we uitgezocht hoe de schakelaars op het speelveld werken. De schakelaars zijn in een matrix aangesloten. Om te bekijken wat voor signalen op deze matrix worden gezet hebben we een meting gedaan met een oscilloscoop: Op de foto is duidelijk te zien dat er een blokgolf te zien is wanneer een schakelaar is ingedrukt. In een tijd van 20us wordt de schakelaar gescand op indrukken. In totaal worden er 5 kanalen gescand dus in ongeveer 100us kan het hele speelveld worden gescand. Omdat we de oude elektronica willen vervangen door een computer en een PLC met wat I/O apparatuur, willen we proberen of het mogelijk is om met een PLC het speelveld uit te lezen. Hiervoor hebben we een programma geschreven en de PLC aangesloten op het matrix. Echter liepen we tegen problemen aan toen bleek dat de PLC niet snel genoeg de uitgangen kon schakelen. Hier zaten enkele ms tussen, waardoor een bal gemist kan worden en dus de score niet klopt. Dit kan niet veranderd worden ivm de cyclustijd van een PLC. Conclusie: Met de matrix is het niet mogelijk een PLC te gebruiken voor baldetectie. De mechaniek van de flipper aan de onderzijde van het speelveld De spoel zorgt ervoor dat de veer wordt ingetrokken en het geheel naar links draait. Aan de andere zijde van het speelveld zit de flipper bevestigd. Met een schakelaar wordt ervoor gezorgd dat de tweede wikkeling van de spoel wordt ingeschakeld, zodra de flipper is ingeschakeld. Dit om te voorkomen dat de spoel teveel vermogen trekt en de zekering kapot gaat. De pneumatische flipper Op bovenstaande foto is de flippermechaniek te zien met de cilinder op luchtdruk. Op de plek van de spoel is de cilinder gemonteerd. De originele bevestigingspunten zijn hetzelfde, waardoor er relatief simpel teruggebouwd kan worden naar de originele variant. De schakelaar zit er hier nog op, maar wordt nu overbodig omdat er niet meer van spoelen gebruik wordt gemaakt. De PLC afgemonteerd op een DIN rail in de flipperkast Aangezien er nog geen kleppenblok beschikbaar was hebben we op de website van Festo de benodigde kleppenblokken en luchtslangen besteld. Deze komen als het goed is in de derde week aan. Week 3Na de eerste 2 weken was het wachten op het kleppenblok. Om hiervoor ruimte te maken hebben we de sound module gedemonteerd rechts naast de PLC. Hier wordt later het kleppenblok gemonteerd in de kast. Gemonteerde kleppenblok in de flipperkast. Nadat we dit getest hadden zijn we begonnen met de ombouw van de torens. Hiervoor hebben we beugels gemaakt om de cilinders te monteren aan de torens. Omgebouwde toren. De Bouncer was wat minder makkelijk om te bouwen tot luchtdruk. Het probleem was dat we geen geschikte cilinder voor de bouncer. Eerst hebben we geprobeerd met houten blokjes maar voldeden niet omdat het hout ging splijten. Het principe van een blokje die de cilinder klemt werkt goed alleen hout was niet geschikt, hebben we besloten om hetzelfde blokje opnieuw te maken maar nu van kunstof. Bouncer met kunstof blok. Nu alles is omgebouwd op de "muur" na, hebben we de kabels vast gelegd en de kabels op lengte gemaakt. Omdat de kleppen spoelen bevatten is het nodig op de uitgangen van de PLC te beschermen met diodes. Hiervoor hebben we een print gemaakt dat tussen de PLC en de kleppenblok zit. Week 4Na verschillende potjes flipperen bleken de torens los te trillen. Om dit op te lossen hebben we de huidige moeren vervangen door borgmoeren. na het vervangen van de moeren was dit probleem opgelost. Daarnaast waren een aantal flippers verschoven en zijn opnieuw afgesteld. Omdat de oude besturing niet meer gebruikt wordt hebben we besloten om de kast van onnodige printen en kabels te ontdoen. De MPU als de solenoid met trafo / voedingsprint zijn verwijderd. Ook de display plaat is er uitgehaald en de ongebruikte kabels op het speelveld van de spoelen en verwijderde schakelaars. Toen de kast eenmaal kaal was hebben de de oude 230V bekabeling vervangen door nieuwe bekabeling met stekkerblok. De oude beveiliging van de 230V hebben we laten zitten zodat als iemand het deurtje van de flipperkast open doet de stroom automatisch van de hele kast uitvalt. Het bestaande betaalsysteem werkte niet en hebben we eruit gehaald, en de startknop rechtstreeks op de PLC aangesloten. Flipperkast gestript. Omdat nu de startknop ook op de PLC aangesloten is, hebben wij de PLC software aangepast om een spel te kunnen starten en ballen te tellen. Als de ballen op zijn wordt de besturing uitgeschakeld. Als het spel niet gestart is, is ook de bediening uitgeschakeld. De website is aangepast en we hebben een logo gemaakt voor onze site. Deze week zijn we ook begonnen om te kijken hoe we geluid af kunnen spelen als er een sensor geraakt wordt. Als eerste is er gekeken of het via Citect SCADA gedaan kon worden, maar na testen bleek dat er een vertraging was tussen het indrukken van de schakelaar en het afspelen van het geluid. Om te kijken of het een SCADA probleem was, hebben we een Vellerman USB board gepakt en de sensoren doorgeschakeld via een transistor naar het boardje. In VB.NET hebben we een testprogramma geschreven om te kijken of er nog steeds vertraging ontstaat. Bij het testen onder Windows Vista bleek dat er nog steeds vertraging was tussen het indrukken en afspelen van het geluid. Bij het testen onder Windows XP bleek er geen vertraging te ontstaan.
De muur van de flipperkast is deze week omgebouwd om op luchtdruk te kunnen werken. Nu deze om is gebouwd zijn alle spoelen eruit gehaald en allemaal vervangen door cilinders. We willen de schakelaars uitlezen en de lampjes aansturen door middel van Atmel chips. Om de PC met de Atmel te kunnen laten communiceren willen we gebruik maken van een seriele verbinding die standaard in de Atmel chips zitten. Hiervoor hebben we deze week een test gedaan om de communicatie te testen. Nu de besturing in de PLC zit is er een basis SCADA systeempje gemaakt. Opzet SCADA. Ook heeft de website een facelift gehad. Week 6Nadat alle onnodige kabels uit de flipperkast verwijderd zijn, en we al waren begonnen met het leggen van de nieuwe kabels, zijn er deze week kabelgoten gehaald om de kabels mooi weg te werken. Ook is het bordje voor het uitlezen van de sensoren ontworpen, gemaakt en de software ervoor geschreven. Er is voor gekozen om elke 100 ms de waardes die het bordje gezien heeft naar de computer te versturen. het speelveld heeft totaal 5 kanalen + 1 kanaal voor de PLC, en elk kanaal wordt voor 500us gescand. Er is voor gekozen om ook waardes vanuit de PLC in te kunnen lezen omdat bepaalde schakelaars uit het matrix van het speelveld zijn gehaald en gekoppeld zijn aan de PLC. Voor deze schakelaars moeten wel punten geteld worden, vandaar dat deze door zijn gekoppeld aan het sensoren bord. Ook is het bordje voor het aansturen van de lampjes ontworpen en moet volgende week nog gesoldeerd worden. Kast met kabelgoot. Vorige week hebben we een nano ITX computer besteld en deze week binnengekomen. Deze is ook in de kast gemonteerd. Op de computer komt Windows XP embedded. Het was een eis van school om een nano ITX computer te krijgen. nano ITX computer. Nu bijna alles in de kast is gemonteerd, hebben we ook een TFT scherm via marktplaats gekocht en opgehaald. Deze moet nog in de kast gemonteerd worden. Week 7Deze week zijn we begonnen met het strippen van de monitor en het ophangen in de kast. De monitor bevatte een stevige voet die iets te groot was om in de kast te kunnen monteren en bevatte een veerconstructie om de monitor in hoogte te kunnen verstellen. Aangezien de monitor op een vaste plaats, hoogte en de voet als hangbeugel komt te hangen, was het niet wenselijk om de veren te behouden. Na het ophangen van de monitor werd het te donker in de kast om de andere componenten goed te zien, daarom is er besloten om spots bij in de kast te bouwen. Er is gekozen voor 12V spots die aangesloten zijn op een PC voeding waar ook de lampjes op aangesloten zijn. Flipperkast met het TFT scherm ingebouwd. Nu het sensoren bord af is, is geprobeerd om de waardes in te lezen met Citect SCADA. Het SCADA systeem moet het middelpunt worden van de flipperkast en het was het makkelijkste geweest om hier ook de waardes van het speelveld in te lezen. Helaas was het niet mogelijk om het sensorenbord in te lezen zonder gebruik te maken van een driver van Citect. Om deze reden is er gekozen om een aparte applicatie te maken in VB.NET. Momenteel kan de applicatie alleen nog maar de waardes inlezen en op scherm weergeven. Ook het lichtbordje begint vorm te krijgen. Na het solderen en doormeten van het bordje bleek het een aantal ontwerpfouten te bevatten. De fouten zijn door middel van draadbruggen gerepareerd. Daarnaast is begonnen met het schrijven van een test programma voor het aansturen van de lampjes. Het speelveld bevat 56 lampjes die apart aangestuurd kunnen worden, er is begonnen met het uitzoeken van de draden en het groeperen hiervan. Lichtbord. Week 8Deze week was het herfstvakantie en is er niet gewerkt aan het project Week 9Deze week zijn we begonnen met het maken van een verbinding tussen VB.NET applicatie (die het speelveld uitleest) en Citect SCADA. Er is gekozen om een ODBC connectie vanuit VB naar de database van Citect op te zetten. In SCADA dient er extra TAGS aangemaakt te worden die door VB veranderd kunnen worden. De score wordt in VB berekend en als het veranderd doorgestuurd naar SCADA. Het veranderen van de waardes wordt gedaan met een SQL statement. Daarnaast is de applicatie uitgebouwd om te zien welke schakelaar geraakt is. Applicatie voor het uitlezen van het speelveld. Ook is er deze week een uiteindelijke versie van Windows XP embedded gemaakt die op de nano-ITX computer komt te staan samen met Citect SCADA. De draden van de lampjes zijn uitgezocht en op headers gesoldeerd. Bij het ontwikkelen van de software voor het lichtbord zijn er nog een aantal problemen naar boven gekomen en slechte solderingen ontdekt, en opgelost. De huidige beugels van de torens en houten blokjes van de flippers voldeden niet, hiervoor zijn nieuwe beugels besteld en binnengekomen. De drie torens hebben nieuwe plaatjes met beugels gekregen en de houten blokjes zijn vervangen voor beugels. Daarnaast is de drukregelaar op de kast gemonteerd en kabelgoten onder in de kast gemaakt om de kabels goed weg te werken. Als laatste deze week hebben wij de beschermplaat die over het bal afvuurmechanisme zit, vervangen door een doorzichtige kunstof kap. Links oude kap, rechts nieuwe doorzichtige kunstof kap. Week 10Nu bijna alles in de kast zit, hebben wij een lexan plaat gekocht en op maat gezaagd om voor de hardware te maken zodat mensen niet bij de hardware kunnen komen, maar er nog wel naar kunnen kijken. Het reststuk dat over is gebleven van de lexan plaat wordt gebruikt voor de zijkant. In de zijkant van de kast hebben wij een gat gezaagd waar een lexan plaat inkomt. Om de binnenkant goed te verlichten is er een TL-balk gemonteerd. Tevens komt er nog een spiegel in om vanuit de zijkant de onderkant van het speelveld te zien. Gat in de zijkant van de flipperkast. Wij hebben een duurtest uitgevoerd op de hardware, om te bepalen of de hard- en software stabiel blijft. Hierbij kwam een probleem naar boven met het printje die het speelveld uitleest. De string die elke 100ms naar buiten wordt gestuurd, werd onleesbaar, of het printje stopte helemaal met het versturen van de waardes. We konden geen fout vinden in de software en zijn gaan kijken of het een spanningsdip probleem is. Na het meten met een oscilloscoop ontdekte wij dat de spanning schommelde tussen de 4 en 5 volt. Ook een mogelijke oorzaak is het instabiel worden van de oscillator.
Ook de aanstuurprint voor de lampjes werkt niet naar behoren, en hebben besloten een andere manier te onderzoeken voor het aansturen van de lampjes. Na onderzoeken kwamen we op schuifregisters uit. Het voordeel van het gebruik van schuifregisters ten opzichte van het originele bordje is dat met schuifregisters wel alle lampjes tegelijk aangestuurd kunnen worden i.p.v. 4 tegelijk bij het originele bordje. Ook zijn schuifregisters gemakkelijk uit te breiden. Om dit in praktijk te zien is er een experimentprintje gemaakt met 2 schuifregisters. Na een test bleek het inderdaad geschikt te zijn voor onze toepassing. Week 11Om de problemen op te lossen van het printje die het speelveld uitleest, hebben wij besloten om een nieuw printje te ontwikkelen. Het nieuwe printje bevat een extern kristal en extra condensatoren die bij de Atmel zijn geplaatst. Na een nieuwe duurtest bleek het bordje nu wel goed te functioneren. Het nieuwe sensoren bord. Deze week hebben we ook een nieuw tiltplankje gemaakt en op de zijkant van de kast gemonteerd. Om het plankje te beschermen is er een beschermkap overheen gemaakt. De software moet nog wel aangepast worden zodat de flipperkast in de tilt modus terecht kan komen. Tilt plankje op de zijkant van de kast. Na het succesvolle experiment met de schuifregisters, is er een nieuwe print ontworpen en gemaakt. Ook is er begonnen met het schrijven van de software voor het nieuwe bord en VB.NET applicatie voor het aansturen ervan. Verder is de huidige applicatie verder uitgebreid zodat het nu een .INI bestand in kan lezen met alle settings, zodat het makkelijk wordt om de instellingen aan te passen. Tevens zijn er geluidjes achter de knoppen gehangen. Licht bord met schuifregisters. Week 12De voortgang van deze week. We hebben voedingen binnengekregen, 1 van 5 volt en 1 van 24 volt (voor de PLC), deze zijn ingebouwd en aangesloten. De bedrading kan nu ingekort worden en netjes worden weggewerkt. De voeding van de nanoITX is gemonteerd op de achterplaat zodat deze niet meer los in de kast hangt. Ook hebben we deze week een boxensetje gekocht voor in de kast, uiteraard uitgerust met een subwoofer. Het lichtbordje is geprogrammeerd, ingebouwd en aangesloten. De eerste tests waren succesvol, alleen als alle lampjes aanstaan, branden de lampjes toch minder sterk. Dit is goed mogelijk omdat alle lampjes zijn aangesloten op een gedeelde 5v-lijn, als alle lampjes aanstaan, daalt de spanning naar 4v, hier moeten we nog wat op vinden. De rode cirkels staan om de vernieuwingen Een eerste versie van de software om het lichtbordje aan te sturen is af en lijkt goed te werken. We hebben geprobeerd meerdere voedingen aan te sluiten op de 5v-lijn van de lampjes, dit bleek het afzwakken van de lampjes niet te verminderen. Software voor lampjes We hebben we 5v-lijn opgedeeld en apart aangesloten op de voeding, de lampjes zwakken nu veel minder af. Ook hebben we testen gedaan met LED-verlichting. De LEDs geven goed licht, alleen op sommige plaatsen mist het warme licht van de gloeilampen. Ook is de beperkte lichthoek van de LEDs op sommige plaatsen een probleem. Tests met 12 volt op de LED's gaven een beter resultaat, goed genoeg om nieuwe LED's te bestellen. Aangezien we de lampjes, de geluiden en de sensors nu allemaal kunnen besturen, hebben we besloten om te beginnen met het ontwerpen van het spelverloop. Week 13Deze week hebben we de LED's binnengekregen en aangesloten. Ook is er een ruit op maat gemaakt voor de zijkant van de kast. De rest van de week hebben we aan het spelverloop gewerkt en getest (competities gespeeld :)). Het is nu ook mogelijk om met 4 spelers te spelen en er zijn bugs gevonden en opgelost. Verder zijn er ontwerpen voor stickers gemaakt die we komende week gaan maken De schroeven die de cilinders vastzetten zijn vervangen door betere schroeven, aangezien deze steeds lostrilden. Hieronder een demo van de flipperkast. Helaas zonder geluid: Week 14De laatste voeding is nu ook binnen, de voeding voor de LEDjes, deze is ingebouwd en werkt naar behoren. Alle pushrubbertjes zijn vervangen (rubber kapjes die de 'kappen' op het speelveld op zijn plaats houden) en we hebben nieuwe flippers (de oude waren beschadigd). De layout van het SCADA-systeem is flink verbeterd, de monitor is terug ingebouwd en het spelverloop is verder uitgebreid. Natuurlijk is er ook weer uitvoerig getest. De ontwerpen voor de stickers zijn nu klaar, nu nog een drukkerij vinden die het kan drukken. Week 15Deze week is begonnen met de afwerking van de kast. Er is een spiegel gemonteerd onder het speelveld. Vanaf de zijkant van de kast kan men nu via een raam (met daarachter de spiegel) de onderkant van het speelveld bekijken. Daarnaast is de kast op een aantal plekken, waar geen beplating zal komen voorzien van een likje zwarte verf. Een foto hiervan zal na de kerstvakantie op de site worden gezet. Week 16Inmiddels zijn we weer volop aan het werk gegaan om de laatste details af te werken. De speakers zijn toch uit de kast gehaald en aan de bovenzijde gemonteerd. Het geluid werd door de plexiglas afdekplaat teveel gedempt en de volumeregeling zou niet meer voor iedereen instelbaar zijn. Daarnaast is er een statuslamp met flitslicht gemonteerd aan de bovenzijde om de status van het spel aan te geven. De groene lamp brandt als het spel is gestart en loopt. Op het moment dat de tilt wordt geactiveerd, gaat het rode flitslicht knipperen. Ook op gebied van software is er nog wat gebeurd. De laatste bugs zijn uit de .NET applicatie gehaald. Alle scores en bonussen werken nu zoals uitgedacht. Ook is de PLC software nog aangepast, zodat bij het inschakelen van de kast de cilinders worden bewogen om het kleven door vocht in de slangen tegen te gaan. Vooral de bumpers hebben hier last van. Week 17In de laatste week hebben we nog een aantal details verder uitgewerkt. De highscores (top 3) worden nu op een virtueel podium gezet met een foto van de persoon. Deze wordt automatisch na het behalen van de highscore door een webcam gemaakt en opgeslagen. Zie ook de foto op de frontpage voor een foto van het eindresultaat. Daarnaast hebben we de flippermechaniek verstevigd, zodat deze zonder regelmatig onderhoud kan worden gebruikt. De kast zal nu in de hal van de hogeschool te Arnhem worden geplaatst, zodat mede-studenten hiervan gebruik kunnen maken. |
|||||
Copyright © 2007 by ICADefender Team |