Inhoudsopgave:
- Stap 1: Benodigde materialen
- Stap 2: Booleaanse logica
- Stap 3: Puzzel van boer, vos, gans en graan
- Stap 4: Geheugen
- Stap 5: Regellogica
- Stap 6: Maak een prototype van een echt circuit
Video: Boer, Vos, Gans, Graan Puzzel - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Toen ik een kind was, pakte ik een boek dat mijn vaders waren, genaamd The Scientific American Book of Projects For The Amateur Scientist. Ik heb het boek nog steeds en ik heb begrepen dat het tegenwoordig een moeilijk boek is om aan te komen. Maar je kunt het nu online lezen. Dit boek diende om me kennis te laten maken met veel dingen, maar het hoofdstuk dat mijn interesse wekte, was dat over Mathematical Machines. Het is misschien wel het ding dat me op weg heeft geholpen in mijn uiteindelijke carrière van softwareontwikkeling.
In dit hoofdstuk vindt u beschrijvingen van machines voor het oplossen van puzzels die gebruikmaken van circuits uit die tijd… die dateren van vóór moderne geïntegreerde circuits of zelfs transistors (met behulp van relais). Maar sommige van dezelfde concepten waren er, die van logische apparaten die in wezen hetzelfde zijn dat moderne computers vandaag de dag nog steeds gebruiken.
Tegenwoordig kun je voor een paar dollar gemakkelijk en goedkoop complete computersystemen krijgen en je puzzel of spel programmeren. Maar je kunt ook veel dingen op een lager niveau doen, met behulp van de logische poorten waaruit computers zijn opgebouwd, om aangepaste hardware voor je puzzel te maken. Hoewel dit misschien niet praktisch of ideaal is, kunt u er wel door leren hoe computers echt werken. Het is ook best leuk.
Stap 1: Benodigde materialen
Je kunt dit volledig bouwen in Tinkercad Circuits, en de daadwerkelijke werking van de puzzel simuleren.
Als je het fysiek wilt bouwen, heb je het volgende nodig:
4 tuimel- of schuifschakelaars.
1 drukknop (kortstondig)
2 kleine broodplanken.
9 LED's.
9 1K weerstanden.
1 7475 quad-latch-chip
2 7408 quad EN poorten
1 7432 quad OF-poort
1 batterijpakket met 3 AA- of AAA-cellen.
set jumperdraden.
Voor de chips uit de 74xx-serie kunt u elke variant hiervan gebruiken. IE, de 74xx-versies zijn de originele TTL, maar je kunt ook de 74LSxx-versies gebruiken (lager stroomverbruik), of de 74HCxx (zelfs lagere power cmos-versies) enz. Onthoud dat de 74xx- en 74LSxx-versies gemakkelijk te hanteren zijn, maar alle andere variaties zijn gevoelige statische elektriciteit.
Stap 2: Booleaanse logica
Booleaanse logica klinkt misschien eng, maar het is eigenlijk vrij eenvoudig. Booleaans betekent gewoon dat je te maken hebt met alleen 1s en 0s, of True en False. Of in elektronica, + en -. Het logische deel ervan komt gewoon neer op veel "als dit, dan dat". De meest elementaire logische bewerkingen zijn eenvoudig deze drie dingen: EN, OF en NIET. Dit worden poorten genoemd, omdat ze in wezen fungeren als letterlijke poorten voor de stroom van elektriciteit door een circuit.
De EN-poort werkt als volgt. Het heeft twee ingangen en een uitgang. De twee ingangen kunnen een 1 of 0 zijn, en de uitgang is een 1 of 0. Voor de EN-poort, als beide ingangen 1 zijn, is de uitgang 1. Anders wordt een 0 uitgevoerd.
Voor de OF-poort heeft deze ook twee ingangen en één uitgang. Als de ene of de andere ingang een 1 is, dan is de uitgang een 1.
De laatste poort is de NIET-poort en heeft slechts één ingang en één uitgang. Als de invoer een 1 is, is de uitvoer 0. Als de invoer 0 is, wordt een 1 uitgevoerd.
De OF- en AND-poorten kunnen ook meer dan 2 ingangen hebben. Ter vereenvoudiging kunnen ze worden weergegeven met 2 of meer lijnen die in één poort gaan, maar in werkelijkheid is een poort met 3 invoer slechts twee poorten met 2 invoer, waarbij de ene in de andere wordt ingevoerd.
U weet nu alles wat u moet weten om een computer te bouwen. Zelfs de modernste computers gebruiken gewoon deze drie dingen, hoewel ze er misschien miljoenen van gebruiken.
Dus laten we een puzzel maken.
Stap 3: Puzzel van boer, vos, gans en graan
Het eerste in het boek is een logisch circuit om de klassieke puzzel van de boer, de vos, de gans en het graan te maken. Deze puzzel bestaat al honderden jaren in verschillende vormen. Het is een basispuzzel van logica met slechts een paar regels. De puzzel is als volgt.
Een boer heeft een vos, een gans en wat graan. Hij komt bij een rivier die hij moet oversteken, en er is een boot, maar die kan hem maar één ding tegelijk vasthouden.
Hij kan de vos niet bij de gans laten, want de vos zal de gans opeten. Dat is wat vossen doen, het is gewoon hun aard.
Hij kan de gans niet met het graan achterlaten, want de gans zal het eten.
Hoe krijgt hij ze alle drie veilig aan de overkant van de rivier?
Om deze puzzel te maken hebben we een paar dingen nodig. Eerst beginnen met vier schakelaars, één voor elk van de boer, de vos, de gans en het graan. Dit is hoe we zullen instellen wat op de boot gaat.
Ten tweede hebben we de puzzel nodig om te onthouden waar alles is van stap tot stap.
Dan hebben we een knop nodig om te vertellen wanneer de boot moet worden verplaatst.
Ten slotte hebben we wat logica nodig om de regels af te dwingen.
Stap 4: Geheugen
Om de locaties van de objecten in deze puzzel te onthouden, gebruiken we iets geavanceerder dan de relais die in het originele circuit werden gebruikt. Toen dit boek werd geschreven, waren er geen transistors, maar wel relais. Deze relais waren zo bedraad dat wanneer je op een knop drukte, ze zouden sluiten en dan gesloten blijven totdat je op de knop aan de andere kant drukte.
Vandaag gebruiken we een gewoon en goedkoop onderdeel, een 4-bits vergrendeling. Een 'bit' in computerlogica verwijst gewoon naar een enkele 1 of 0. Het is hetzelfde als een cijfer. Dit geïntegreerde circuit (of "IC" of "Chip") bevat 4 logische componenten die bekend staan als flip-flops. Een flip-flop is slechts een paar poorten die zo zijn geconfigureerd dat wanneer je hem een 1 of 0 als invoer geeft, hij een 1 of 0 zal uitvoeren en dan 'vast' blijft zitten. Vandaar de naam flip/flop. Het zal flippen van een 1 naar 0 of een flop van een 0 naar een 1 (of is het andersom?) en dan blijft het daar. Dit doet in principe hetzelfde als de vier relais in het oude circuit.
Je kunt een eenvoudige flip-flop maken met slechts twee poorten, maar die in deze grendel hebben een extra functie (hiervoor zijn nog een paar poorten nodig). In plaats van onmiddellijk de output te laten veranderen met de input die verandert, heeft het een andere input die de inputs in- of uitschakelt. Normaal blijft het uitgeschakeld. Hiermee kun je twee van de schakelaars (de boer en een andere) instellen voordat hij de boot naar de andere kant probeert te 'sturen'. Ons circuit is al slimmer dan het oude.
We hebben nu de mogelijkheid om de locaties van alle principes in onze puzzel in te stellen en te onthouden.
Dit is ons circuit tot nu toe: 4-bits vergrendeling
Stap 5: Regellogica
Om de regels af te dwingen en aan te geven wanneer er een probleem is, gebruiken we enkele booleaanse logische poorten om de beperkingen te implementeren die we nodig hebben.
We hebben vier tests nodig om te bepalen of er een probleem is - als een van deze waar is, laat dan het waarschuwingssignaal branden.
1. Als het graan en de gans aan de andere kant van de rivier zijn en niet de boer.
2. Als de vos en de gans aan de andere kant van de rivier zijn en niet de boer.
3. Als de boer de rivier oversteekt en er is geen vos en geen gans bij hem.
4. Als de boer de rivier oversteekt en er is geen graan en geen gans bij hem.
Let op de manier waarop ik dit heb geformuleerd om exact overeen te komen met de logica die we zullen gebruiken, dit zijn EN-poorten met ofwel de normale of de geïnverteerde uitgangen van de grendel, de geïnverteerde die zich gedragen als een "nee" of een "NIET".
Aangezien elk van hen waar kan zijn en een probleem kan veroorzaken, worden ze allemaal ingevoerd in een OF-poort.
De voltooide logica, inclusief de 4-bits vergrendeling, wordt weergegeven in de schermafbeelding. Dit komt uit een programma dat logisch wordt genoemd. Dit programma is uitstekend geschikt om de stroom van logica te tonen terwijl u de schakelaars manipuleert, waarbij in blauw de verbindingen met een '1'-waarde worden gemarkeerd. Ik heb het bestand bijgevoegd waar je logisch in kunt laden.
Stap 6: Maak een prototype van een echt circuit
Nu kunnen we een echt werkend circuit maken. Met behulp van Tinkercad-circuits kunnen we dit doen met simulatie van het echte uiterlijk en de functionaliteit van hardware.
Tinkercad heeft een 7475 4-bits vergrendeling ingebouwd, dus dat onderdeel is eenvoudig. Voor de poorten heb ik ervoor gekozen om twee chips te gebruiken met elk 4 AND-poorten (de 7408). Om vier EN-poorten met 3 invoer te maken, gebruiken we twee EN-poorten waarbij de uitvoer van de ene in de ene ingang van de andere gaat. Dit laat 1 ingang over op de tweede en 2 ingangen op de eerste, waardoor een EN-poort met 3 ingangen ontstaat. Voor de OK-poort doe ik hetzelfde. Een chip met vier OF-poorten gebruikt twee OF-poorten, waarbij de uitgangen naar een derde OF-poort gaan. Een poort blijft ongebruikt.
Voer de simulatie uit op Tinkercad-circuits
Aanbevolen:
Scratch Doolhof Puzzel: 5 stappen
Scratch Maze Puzzle: Vandaag gaan we een eenvoudig, maar moeilijk doolhof maken met Scratch. Scratch is een op blokken gebaseerde visuele programmeertaal. Om te beginnen, hier zijn de dingen die nodig zijn: Een apparaat waarop je Scratch kunt draaien Let's go
Ontsnap aan het blad (Excel-puzzel): 5 stappen (met afbeeldingen)
Ontsnap aan het blad (Excel-puzzel): Ontsnap aan het blad is een klein Excel-spel dat ik enkele jaren geleden heb samengesteld om een groep collega's wat meer geavanceerde Excel-vaardigheden te leren terwijl ik een beetje plezier heb met Trivia en Logic-puzzels, twee dingen waar ik dol op ben! game is een combinatie van Excel voor
Augmented Reality-puzzel: 11 stappen
Augmented Reality Puzzle: Puzzelspellen zijn gewoon geweldig. Er zijn allerlei soorten puzzels, de typische legpuzzel, het doolhof, met tokens en zelfs videogames van dit genre (bijvoorbeeld Captain Toad). Puzzelspellen vereisen dat de speler een probleemoplossende strategie ontwerpt
Op kleuren gebaseerde puzzel: 6 stappen
Kleurgebaseerde puzzel: Hallo daar! Voor een schoolproject genaamd "If This Then That" Ik moest een interactief object bouwen met Arduino. Ik besloot een op kleuren gebaseerde puzzel te bouwen met een eenvoudig feedbacksysteem. Wat het doet (in het kort): Het bepaalt de kleur van het object
PUZZEL - Arduino Logic Game: 3 stappen
PUZZEL - Arduino Logic Game: Hallo. Ik wil je graag vertellen over de geschiedenis van het maken van een eenvoudig puzzelspel "Puzzel" met behulp van Arduino UNO en TFT-Shield. Om het spel te maken had ik de volgende componenten nodig:Arduino UNO Power Adapter (AC-DC) 6-12V voor Arduino UNO Micro