Interactieve LED Beer Pong tafel (57 / 88 stap)

Stap 57: Software: de werking van de Code van de wasmachine bal


De bal sluitringen zijn zeer koele eigenschappen op deze tabel en ze zijn zeer eenvoudig te gebruiken. Een speler druppels een ping pong bal in de linker bal wasmachine gat waar een IR-sensor zal speurder op en start een waterpomp, de waterpomp zal afsluiten na twee seconden en start de aanjager ventilator die vervolgens de ping pong bal uit de afrit gat blazen zal en de speler zal grijpen. Nu dat is al fijn en dandy als de bovenstaande situatie 100% van de tijd, maar wat gebeurt er gebeurt als de speler niet ooit grijpen de ping pong bal? Of wat als de bal vast komt te zitten? Of iemand per ongeluk de vermelding sensor met hun vingers reizen? Nou dan zou de bal wasmachine uitvoeren voor onbepaalde tijd tenzij de speler handmatig de afrit IR-sensor struikelde. Zien als ik was niet van plan te vertrouwen op mensen de afrit IR sensor handmatig te struikelen als dingen ging mis, besloten heb ik om te zetten sommige foutafhandeling in de code van de wasmachine bal.

Opmerking:
Wanneer de bal wordt geblazen uit het gat van de afrit, ziet de IR-sensor de bal voorbij, maar het zal de bal niet zien wanneer het is zweefde over de bovenkant van het gat van de uitgang. Om de functie van de wasmachine bal goed, zetten we de aanjager ventilator te lopen voor drie seconden na de afrit IR sensor de bal doorgeven, daarmee die de speler genoeg tijd om te grijpen de ping pong bal ziet heeft voordat de ventilator uitgeschakeld en hij terug naar beneden de pijp valt. Als de speler het niet grijpen doet, zal de bal wasmachine speurder op terug te vallen naar beneden de pijp en blaas het back-up. Zij zal dit doen voor een vast bedrag van tijd voordat het time-out en stelt u de vlag van een fout.

Er zijn werkelijk slechts twee situaties waar dingen mis zal gaan. De eerste situatie is als een bal in het gat van de vermelding wordt gezet, maar het komt nooit uit de pijp aan de afrit sensor reis en afwerking van de functie. In dit geval zou de bal wasmachine gewoon blijven draaien totdat iemand de afrit sensor handmatig struikelde of uitgeschakeld in de tabel. De tweede situatie gebeurt wanneer de ping pong bal uit de afslag hole en reis de sensor komt maar de speler de bal niet grijpen zodat de bal wasmachine uitgeschakeld wordt en de bal terug naar beneden de pijp valt. Als een andere bal is gestoken dat dezelfde bal wasmachine die het kan jam omhoog omdat er nu twee ballen in is de pijp in plaats daarvan voor dat wat het is ontworpen voor. In al deze gevallen, we willen niet dat spelers blijven proberen de bal wasmachine gebruiken en de situatie alleen maar erger maken, in plaats daarvan willen we uitschakelen van de wasmachine bal totdat het probleem is opgelost.

Wij zullen de tabel programmeren zodat als een bal in de buis vast komt te zitten of als een bal terug naar beneden de pijp valt, de bal wasmachine wordt volledig uitgeschakeld totdat het probleem is opgelost en de speler '' de bal wasmachine reset. Als een speler probeert om te zetten van een bal in de wasmachine bal wanneer deze is uitgeschakeld, de bal wasmachine LED ringen zal knipperen in- en uitschakelen vijfmaal waaruit blijkt dat de bal wasmachine is vastgelopen. Ik heb vier stroomdiagrammen die elk besluit en het proces dat de microcontroller uitvoert om het afhandelen van deze fouten verklaren bijgevoegd. Hier is een korte walk-through:

Situatie #1
Een bal is gedaald in het gat van de vermelding op bal wasmachine #2 maar het blijft steken in de pijp en de wasmachine bal niet verlaten. De wasmachine bal time-out en uitgeschakeld, maar de speler probeert om een andere bal in de wasmachine bal. Het punt waar de speler zet de tweede bal in is deonoted door **.

Ball_Washers_Detect (UINT8-detectie)
1) controleren om er zeker van te zijn dat de BW2_JAM van de voorafgaande bal niet is ingesteld. Het is uitgeschakeld, dus verder met de volgende stap.
2) set BW_ACTIVE = 1, zodat elke functie die gebruikmaakt van de bal wasmachine LED ringen voor animaties zal ze niet gebruiken.
3) de post LED-ring en de bal wasmachine waterpomp inschakelen.
4) toestaan van twee seconden te geven zodat de pomp heeft genoeg tijd om te duwen de bal naar de andere kant van de pijp.
5) de bal wasmachine pomp uitschakelen en inschakelen van de aanjager ventilator op normale snelheid.
6) controleren om te zien als de bal de afrit sensor nog heeft doorstaan.
7) het niet het geval is laat twee seconden doorgeven en houden toezicht op de sensor om te zien als dit wordt doorgegeven.
8) lussen van vijf keer (ongeveer 10 seconden) maar keer-out als de bal kwam niet uit de afrit gat.
9) set BW2_JAM = 1 zodat als een andere bal wordt gedetecteerd bij het gat van de vermelding van de wasmachine bal het programma weet dat het is vastgelopen.

** De speler zet in de tweede ping pong bal in de wasmachine vastgelopen bal.
10) Ball_Washers_Detect(detection) detecteert de tweede bal en begint de functie opnieuw.
11) het eerste ding dat wordt gecontroleerd voor is als BW2_JAM is ingesteld en het is.
12) de globale variabele 'error_code' ingesteld op BW2_JAM_ERROR_CODE.
13) set DIAGNOSE_ERROR = 1 (de Timer3 interrupt routine voor de rest zorgen zal nu dat DIAGNOSE_ERROR is ingesteld).

Timer3()
11) Timer3 onderbreekt en controleert of DIAGNOSE_ERROR == 1.
12) ziedaar zit een vergissing, functie Display_Error(error_code) aanroepen en omvatten de globale variabele die de foutcode bevat.

Display_Error(Error)
13) het controleren van de error code om te zien wat voor soort fout moet worden weergegeven.
14) is een BW2_JAM_ERROR_CODE, Bel functie Ball_Washer_Jam_Error(error) om te informeren van de speler van de fout.

Ball_Washer_Jam_Error(Error)
15) zijn bal wasmachine #2 van inreis en uitreis sensoren beide geblokkeerd? (Dit is hoe een gebruiker 'Reset' de bal wasmachine).
16) ze zijn niet beide geblokkeerd, instellen BW_ACTIVE gelijk is aan 1 zodat geen andere animaties gebruiken de bal wasmachine LED ringen.
17) de inreis en uitreis ringen van bal wasmachine #2 op knipperen en uit vijf keer, dit informeert de speler dat er een blokkade is.
18) 0 DIAGNOSE_ERROR duidelijk en duidelijke BW_ACTIVE op 0.

Nu dat je een idee van hoe de code van de wasmachine bal wordt opgemaakt, heb ik gepost een video hieronder voor situatie #2 waar de bal is nooit greep uit het gat van de uitgang. De snelheid van de ventilator van de ventilator zal worden verlaagd voordat hij wordt uitgeschakeld, dus dat als de bal niet geweest greep het zal terug naar beneden de pijp vallen en reis de afrit sensor weer. De aanjager ventilator zal dan de normale snelheid en klap de bal terug uit de wasmachine bal worden versneld, het zal dit tot driemaal herhalen en als de bal nog niet is gegrepen door de derde keer zal uitschakelen en instellen van een wasmachine bal jam fout vlag.

U kunt de motor snelheden aanpassen voor uw bal sluitringen in het headerbestand miscellaneous.h onder de gedefinieerde constanten BWx_PUMP_SPEED en BWx_FAN_SPEED ('x' zijnde bal wasmachine #1 of #2).

Gerelateerde Artikelen

LED Pong tafel

LED Pong tafel

Deze LED bier pong tafel blaast geesten, en als u het correct, geen doet zekeringen. De volledig functionele model zowel detecteert waar een bal stuitert en verbetert uw feesten ervaring met een muziek-gevoelige lichtshow. Zoals u ziet, zal onze huid
LED Arduino Bier Pong tafel

LED Arduino Bier Pong tafel

Ons project is een LED verlicht entertainment tabel of gemeenzaam, een Bier Pong tafel. Kregen we het idee van een groep studenten vorig jaar die ook een bier pong tafel voor hun laatste project bouwde, en we geleerd over hun ontwerp en heeft enkele
Interactieve LED-tabel

Interactieve LED-tabel

hier is een gids op hoe te om uw eigen interactieve LED-tabel met behulp van een van de kits van Evil Mad Sciencitstinstructable.Hier is een video van mijn laatste tafel in actie in het donker, en een foto van hoe het eruit:Stap 1: Kies uw maat, en e
Hoe maak je de beste bier Pong tafel op de campus

Hoe maak je de beste bier Pong tafel op de campus

Ben je moe van het spelen van bier pong op lame vouw tabellen?  Of misschien moe van het nemen van uw vrienden deur uit de scharnieren, elke keer dat je wilt spelen?  Ooit afgevraagd hoe ze bouwen alle het koel bier pong tafels online met automatisch
EL Wire Infinity Pong tafel

EL Wire Infinity Pong tafel

heb ik besloten om een ontzagwekkende pong tafel voor mijn nieuwe huis. Gotta love universiteitsleven!Onderdelen lijst:-Fold-Up Plastic tabel-EL draad van uw keuze-Driver voor de draad van uw keuzeIk adviseer hoogst coolneon.com-spiegel klemmen te ho
Infinity Pong tafel V2

Infinity Pong tafel V2

dit is mijn tweede oneindigheid pong tafel. Ik heb veel geleerd van deze twee tabellen, en ik zal proberen om enkele stappen om te repliceren hen. Hoewel ik geef een eerlijke waarschuwing, is er een veel trial and error. Succes!Stap 1: Materialen & T
Gemakkelijke opklapbare Ping-pong tafel

Gemakkelijke opklapbare Ping-pong tafel

Laten we een opklapbare ping pong tafel als mijn eerste DIY-project gepubliceerd in instrucables.com. De werkelijke afmetingen van een een ping pong tafel zijn 274 x 152 cm, als gevolg van de moeilijkheid van vervoer, onze tafel zal hebben de volgend
DIY Ping Pong tafel

DIY Ping Pong tafel

deze eenvoudige DIY ping pong tafel klaar is voor gebruik in een kwestie van minuten. Het kost minder dan $100 en de benen zijn iets dat elke huiseigenaar hoe dan ook moet!Opmerking: Dit is niet een verordening tabel! Deze tabel meet 4' x 8' vs. een
Procedures.. Make A Magic Ping Pong tafel

Procedures.. Make A Magic Ping Pong tafel

Dit is hoe wij onze eerste magische ping pong tafel gemaakt! Het is een directiekamer tabel die gemakkelijk kan worden omgezet in een ping pong tafel! Wij hopen dat u geniet van!Stap 1: Eerst moet u uw benen en base! Wij hebben pine gebruikt voor ons
Flat Pack Mini Ping Pong tafel

Flat Pack Mini Ping Pong tafel

Dit is een kleine schoolproject. Hier konden we een object kiezen onze smaak zolang het niet een stuk van meubilair, kunst of een lamp. Alhoewel een ping pong tafel is enigszins een stuk van het meubilair, mocht ik nog langs deze route te gaan.Het id
Hoe het bouwen van een Ping Pong tafel

Hoe het bouwen van een Ping Pong tafel

het project beschrijft de bouw van een Ping Pong tafel gedimensioneerd op de standaard grootte van internationals.Het is een gemakkelijke taak: alle mensen kunnen kunnen doen.Alleen eenvoudige materialen worden gebruikt (voornamelijk hout), en zijn n
Drijvende bier Pong tafel

Drijvende bier Pong tafel

voor veel mensen hier, het is nu zomertijd. Voor veel van die mensen betekent zomer partijen (namelijk degenen buiten). Voor veel van deze mensen hierbij een zwembad op een bepaald punt. En aangezien een partij vaak bier pong voor vele (jonge) mensen
4 x 4 x 4 interactieve LED-kubus met Arduino

4 x 4 x 4 interactieve LED-kubus met Arduino

om uit te leggen mijn 4 x 4 x 4 interactieve LED-kubus gepubliceerd voordat, een beetje meer duidelijk, zal ik proberen om mijn eerste stap voor stap instructable.Deze 4 x 4 x 4 kubus is interactief met behulp van de hoek van de top vier LED's als LE
Hoe te bouwen van een opvouwbare bier pong tafel!

Hoe te bouwen van een opvouwbare bier pong tafel!

ik bouwde dit bier pong tafel voor een vriend!Het gaat om dat een bier pong tafel is echt groot dus ik maak een opvouwbare!Deze is aangepast als een voetbal-grond.Stap 1: Voorbereiden materialen! De tabel is 2,40 m X 0,6 m dus 4 panelen van 0,6 m X 0