Gray Codes (1 / 2 stap)

Stap 1: Voorbeeld van het gebruik van grijze Codes


Example:
Hier is een voorbeeld waar met behulp van de binaire sequentie ons moeilijkheden geeft:

Stel dat we wilden de positie van een astronomisch observatorium Dome lezen dus kunnen we er zeker de koepel openen wordt gewezen, zodat de opening en de telescoop worden uitgelijnd. We kunnen kiezen om te lezen het standpunt optisch. We kunnen een strook van zeggen acht zwart-witte bars op de muur koepel afdrukken en lees de puntjes met acht photoresistors. We kunnen dan het lezen van de positie van de koepel aan binnen 1/256 of een volledige cirkel, ongeveer 2 graden.

Zie de emitter/detector circuit diagram hieronder.  Om te 'lezen' de positie van de koepel de microprocessor zoals een Arduino zou lezen de zwarte en witte balken op de muur koepel, dat wil zeggen dat de balken met de koepel draaien en de stationaire lezer doet niet roteren.   De basis van de 8 fotodetectoren zijn aangesloten op de 8 input pinnen van de Arduino.  Welke codering volgorde moeten we gebruiken?

Stel dat wij hadden gebruikt het normale binaire tellen nu volgnummer om onze zwart-witte bars voor onze photoresistors naar de zin te maken. Het probleem die we tegenkomen met behulp van de binaire sequentie tellen is wanneer we de overgang tussen een nummer en de volgende. Laat zeggen onze sensoren gaan tussen de '255' positie en de "0" positie. Zoals de overgang optreedt en de photoresisters tussen beide getallen zijn, zou een photoresistor of twee overgang van '1' op '0' een beetje voor de anderen. Dit kan te wijten zijn aan een lichte verschuiving in de fotoweerstand de positie of kan worden veroorzaakt door lichte afwijking in de fotoweerstand de bouw/chemische samenstelling waardoor het een beetje gevoeliger dan de anderen. Voor welke reden dan ook een of meer zullen overstappen op een ander tijdstip dan de anderen. Gedurende deze tijd kan de lezing van de phototransitors gaan van 255 naar 127 vervolgens naar 0. Als de motie langzaam is kan genoeg zien veel van deze spurrious overgangen tussen de meeste nummers.

GRIJZE CODE to the Rescue!
Een betere benadering zou zijn om een grijze code gebruiken in plaats van de binaire code. Met behulp van de grijze code, verandert alleen een beetje van de code met elke toename. Daarom wanneer tussen twee standpunten van de code alleen een beetje tussen de twee posities schommelen kan. Daarom wanneer tussen posities 0 en 1, de photoresistors kan soms 0 en soms Lees 1, beide antwoorden zijn echter nog steeds zeer dichtbij de werkelijke koepel positie.

Het probleem met grijze codes is dat de decimale waarde tussen één positie en de volgende onderling niet verschillen een. Software kan dit gemakkelijk oplossen met behulp van een array waarin de grijze code (of zijn inverse). Men kan de waarde van gelezen en de photoresistors als een index in een matrix gebruiken. De waarde van de matrix is de decimale positie. Met behulp van de matrix één, kan het verschil in banen dan berekenen.

Gerelateerde Artikelen

Schieten voor een functie van de Homepage: Timelapse en multi-blootstelling Fotografie DIY-Hoe (maken of uw eigen code schrijven!)

Schieten voor een functie van de Homepage: Timelapse en multi-blootstelling Fotografie DIY-Hoe (maken of uw eigen code schrijven!)

Wat ik leuk vindt aan Instructables is het foto-centric: het eerste wat je ziet bij het maken van een nieuwe Instructable is "Voeg afbeeldingen", voordat een tekstvermelding dialoogvenster verschijnt! Foto's zijn in de wereld waarin die we vanda
Weerstand kleur Code klok

Weerstand kleur Code klok

Noem me een enorme nerd, maar ik heb onlangs besloten bleek het noodzakelijk om te onthouden van de kleurcodes gebruikt ter aanduiding van de waarden van verschillende weerstanden.  Ik heb ook onlangs geworden geïnteresseerd in het maken van de (rela
Hoe de code Arduinos

Hoe de code Arduinos

Dus ik was op zoek via de help-sectie van de Gemeenschap, toen ik zag sommige mensen waar problemen met de codering Arduinos, dus ik ben waardoor dit om te helpen.Voor dit Instructable moet u:ComputerArduino IDESommige delen van dit kunnen afwijken v
Morse Code sleutel verbinding maken met computer

Morse Code sleutel verbinding maken met computer

dit is mijn 1e project, de Morse-Code sleutel verbinding maken met de computer via USBStap 1: begin Bereid een computermuis en het transactieprobleem, verwijder de printplaat uit mouse.Stap 2: Dekking van de LED Papier en tape gebruiken ter dekking v
Gebruik je iPhone te scannen voertuig Codes en sensorgegevens lezen

Gebruik je iPhone te scannen voertuig Codes en sensorgegevens lezen

Met het gebruik van een heel goedkoop (10$!) adapter kunt u gebruik je iPhone als een diagnostisch hulpprogramma om erachter te komen de motor van uw voertuig selectievakje licht, schakelt u de codes, of bekijken van sensoren (zoals temperatuur, zuur
S.Alt stad: QR Code interactieve muurschildering

S.Alt stad: QR Code interactieve muurschildering

S.Alt City is een muurschildering voor het centrum van Syracuse die gelijktijdig Syracuse's industriële verleden en de huidige status als een artistieke hub viert. Het beeld is op het eerste gezicht, historische, beeltenis van een pomp huis en pekel
Quadcopter met crius AIOP v2 megapirateng code

Quadcopter met crius AIOP v2 megapirateng code

Hallo iedereen. Ik werd gevraagd om een quadcopter gebouwd voor educatieve doeleinden tot 450 dollar. Eisen worden gelet, volg mij, geleid, stabiliseren, rondhangen modi etc. low-cost, duurzaam, gemakkelijk te onderhouden en het gebruik van een open
Code schrijven om te lossen van de toren van Hanoi puzzel

Code schrijven om te lossen van de toren van Hanoi puzzel

Q: wat is de makkelijkste manier om de som van alle gehele getallen tussen 1 en 100?A: eerst je de som van alle gehele getallen tussen 1 en 99, voeg dan 100.Silly, juiste? Dit is eigenlijk een voorbeeld van een krachtige verdeel-en-heers-techniek in
QR Code liefde Opmerking Needlepoint

QR Code liefde Opmerking Needlepoint

True Geek Love Valentijnsdag cadeau!!Stap 1: benodigdheden 1 - cross stitch materiaal2 - haak draad3 - large eye naald4 - borduurwerk hoepel5 - vierkante frameAlle de steek telt en grootte van materiaal is afhankelijk van de grootte van het frame wor
CNC borduurwerk: QR Code

CNC borduurwerk: QR Code

een QR-code kunt u een koppeling met behulp van een smartphone te openen. Waarom niet directe mensen om een koppeling met een geborduurde QR-code? U kunt dragen, zet het op een zak of een beurs, het ophangen in een borduurwerk hoepel... De mogelijkhe
De ultieme geeky gepersonaliseerd cadeau - Maak een cross stitch QR code

De ultieme geeky gepersonaliseerd cadeau - Maak een cross stitch QR code

ik heb dit als een cadeau voor mijn zus deze kerst. De QR-code, wanneer gescand op een smartphone, leidt tot een video op YouTube - een slideshow van kindertijd kerst foto's.Het duurde niet lang om te maken en ze vond het geweldig, zoals het was iets
Beste Codes

Beste Codes

Dit instructable is gevuld met ton van koele codes en versleutelingen ik weet zeker dat jullie allemaal zullen genieten van.Voor meer awesome codes en cipher op mijn website-bestcodes.weebly.comOok bezoek mijn andere instructable "film Codes" of
Hoe maak je een brief met een verborgen puzzel / Code

Hoe maak je een brief met een verborgen puzzel / Code

Ik hou gaan naar "Escape from the Room" spelen met mijn vrienden.Voor mijn verjaardag dit jaar verzocht ik ze om samen met mij in een andere lidstaat. Na het evenement en onze schema's coördineren, besloot ik dat ik wilde helpen creëren de sfeer
Batterij Monitor - LinkIt één Code beet 1

Batterij Monitor - LinkIt één Code beet 1

Dit is de eerste van wat velen zijn kan, of weinig Code Bites. Snel zijn Code beten gonna be kleine plug-and-play code segmenten voor verschillende platforms die bedoeld zijn voor snelle en eenvoudige functionaliteit aan uw projecten toevoegen. Zij z