Vier 'Fake TV' kanaal met Arduino of Attiny


Terwijl ik bezig was op een simulator "thuis" bijlage alarmsysteem, een van de dingen die ik wilde doen is dat een TV aan en van tijd tot tijd veranderen van het kanaal. Daarvoor had ik een IR Led opgenomen in het project en dat werkte prima.
TV zijn energie schrokoppen echter en het idee om een TV op stand-by voor langere periodes terwijl op vakantie ook niet echt een beroep op mij.
Dus ik dat het misschien dacht kon ik het licht van een TV met LEDs simuleren.

Waarom was ik niet verbaasd dat een dergelijk product al bestond, treffend genaamd 'fakeTV' het is een apparaat dat gebruikmaakt van 7-12 LED's om na te bootsen de flikkering van een TV. Het kan worden ingesteld om te reageren op licht (d.w.z. inschakelen in de schemering).
De prijs - afhankelijk van het model - is vanaf 25 USD 30 USD 40 dollar voor hun nieuwste model dat een 40" flatscreen-tv simuleert. Nu natuurlijk het risico met dat is dat je eigenlijk kan aantrekken een inbreker die na uw vermoedelijk 'grote flat-screen'
Ik heb gehoord gemengde reviews. Het object is dat je het ergens waar het kan worden gezien, maar nog steeds iets aan het project zijn licht op (jaloezieën, gordijnen). Uiteraard de gordijnen niet te dik worden en moet het apparaat zelf niet van buitenaf zichtbaar.
Een van de klachten die ik hoorde te vaak herhaald werd dat de 'schermen' gespeeld en dat een potentiële inbreker die het gewricht is "behuizing" zou spoedig zien dat het nep was. Hij kunt natuurlijk nog steeds niet een risico nemen en gaan naar een huis van de buren. De FakeTV - als u check hun Website is in feite echt klein. Niet groter dan een kopje koffie lijkt
Omdat ik vond de prijs een beetje steil voor 7-12 LEDs (afhankelijk van het model), begon ik te denken hoe de bouw van een zelf. Afgaande op hun website hun eenvoudigste model heeft een blauwe, een groen, een rood en 4 witte LED's, dus 4 kanalen
Idealiter ik een Attiny gedacht, maar dat heeft slechts 5 uitgangen zogenaamd alle 5 kan worden gebruikt als SoftwarePWM (PB0 en PB1 kunnen worden gebruikt als hardware PWM, PB4 kan gebruikt worden als hardware PWM als analogWrite zou worden uitgevoerd voor die pin in de kern), dat wil zeggen als u Pin 1 (Reset laat) als is. Ik hou niet knoeien met pin 1.
Ik kwam op een 'mini moodlight' met een Attiny85 met 3 LEDs en een moodlight met een Attiny85 die 3 RGB LED's gebruikt. Eigenlijk is er een hoist van sfeerlichtjes op instructables. Sfeerlichtjes natuurlijk hun kleur veranderen zeer geleidelijk, terwijl met een TV die kan meer abrupt, maar dat is een kwestie van programmeren.

Toen kwam ik op iemand ('modeller') in de adafruit forums die eigendom van een 'fakeTV' en had besloten om ook zelf bouwen... met een Arduino. Het interessante ding was dat hij 6 LEDs in plaats van 12 gebruikt en beweerde om goede resultaten mee te krijgen. Ik was echter meer zorgen maken over de hoeveelheid pinnen hij gebruikt in plaats van het bedrag van de LEDs. Goed hij 6 pinnen gebruikt, maar omdat hij leek te schrijven dezelfde waarde elke keer naar zijn 2 groene LEDs en zijn 2 rode LEDs, ik kon zomaar die LEDs parallel respectievelijk. Dat zou me zelfs 2 pinnen, wordt overgelaten met nodig opnieuw slechts 4 pin (rood groen en blauw en wit), die is OK voor een Attiny85 besparen. Ik heb dan nog 1 pin verlaten om toe te voegen een soort trigger.

Zoals gezegd, inmiddels de Arduino 6 PWM pinnen en de Attiny slechts 2 (PB0 en PB1). Zogenaamd PB4 is ook een PWM-pin, maar er is geen uitvoering van de opdracht 'AnalogWrite'. Dus ik overwoog een software PWM.
Met software PWM is in principe wat je doen overschakelen een Digital pin tussen hoog en laag met de taakcyclus bepalen van de 'analogWrite'.
Dat schept echter een ander probleem, zoals de processor zou voornamelijk bezig met 'waiting' en ook je aankan slechts één pin op het moment. Het moment dat u naar een andere pin, laat u de vorige pin hoog of laag. Hoewel u een 'state machine', die al deze problemen niet hebben kan samenstellen

Bel me dom voor willen gebruiken een Attiny85, zoals een pro mini zeer goedkoop deze dagen is en met behulp van een zou het oplossen van de problemen, maar ik gewoon niet het gevoel recht op een 14 digitale pin, 6 analoge pin controller boord voor een circuit dat 4-5 pinnen moet gebruiken.
Dus ik een andere oplossing vinden moest.
De pennen van de PWM PB0 en PB1 worden gecontroleerd door timer 0.

Als we kijken naar de mogelijke PWM pin uitvoeropties die de ATtiny85 ondersteunt:
Output PB0: OC0A of /OC1A.
Uitvoer PB1: OC0B of OC1A.
PB2 output: geen.
Output PB3: /OC1B.
PB4 output: OC1B.

We hebben al OC0A op PB0 en OC0B op PB1.

Dus hoe krijgen we 4 PWM-uitgangen
De ATtiny chip biedt twee timer/counters, Timer/Counter0 en Timer/Counter1, en elk van deze biedt twee PWM comparatoren, OCR0A, OCR0B, OCR1A en OCR1B. Dus in theorie we in staat moeten om vier PWM outputs.

Maar kijkend naar de bovenstaande tabel van pin-toewijzingen het is duidelijk dat we zowel de OC0B als de OC1A niet kan op hetzelfde moment krijgen, zelfs al zijn er twee pinnen beschikbaar: PB3 en PB4.

Gelukkig is de oplossing is vrij eenvoudig; We definiëren een interrupt optreedt wanneer het register OCR1A overeenkomt met Timer/Counter1, en een andere interrupt optreden wanneer de teller loopt over; IE bereikt 00 weer. Dit doen we met behulp van het TIMSK register, dus in principe dat de interrupt optreedt op een vergelijken en een overloop.

Ik snel iets gebouwd op een breadboard en dat leek te werken, dus het was tijd om iets meer duurzaam te bouwen.

STUKLIJST
4 x 330 Ohm Resistor
5 x 150 Ohm weerstand
1 x 10 k Ohm weerstand
1 x 470kOhm weerstand (optioneel)
6 x rode LED
6 x groene LED
6 x blauwe LED
9 x witte LED
1 x phototranistor, fotodiode of LDR (optioneel)
4 x BC547 (of andere NPN transistor schakelen)
7805
7812 (optioneel)
1 x Attiny85
1 x 8 pins DIL aansluiting
OR
Arduino Arduino/RBB
Let wel: het circuit vermeldt 220 Ohm weerstanden maar die waren eerste gissingen toen ik had van de LED voorwaartse spanning nog niet gecontroleerd.

Slechts één opmerking over de 7812: daarvoor moet u een ingang van ten minste 14,5 volt. een PSU van 14.5 volt is zeldzaam. Hoewel sommige wal-wratten uit meer geven als ze niet zijn verbonden met een lading, daalt de spanning vaak bij het laden.
Hebt u een 12 Volt PSU, kunt u de 7812 weglaten.

Als de 12 volt/14.5 volt te krijgen uit een walwart blijkt te zijn een probleem, kunt u overwegen een 75 eurocents(!) 5 tot en met 12 Volt converter

Gerelateerde Artikelen

Een ATtiny met Arduino Program

Een ATtiny met Arduino Program

volgt zijn aanwijzingen voor het programmeren van de ATtiny microcontrollers met behulp van de Arduino IDE. In gewoon Engels is dit hoe te programmeren 8-pins Atmel chips zoals u normaal een Arduino. Dit is cool, omdat de ATtiny klein is, en - goed -
Fish out of Water - ATtiny bestuur gebruikt met Arduino

Fish out of Water - ATtiny bestuur gebruikt met Arduino

FishBowl is een kleine microcontroller board programmeerbare met behulp van de Arduino software.  Het heeft een batterij zodat u het vervolgens zonder het grotere moederbord van de Arduino gebruiken kunt.  Het is als een kleine Arduino kan worden mee
ATtiny programmeren met Arduino

ATtiny programmeren met Arduino

na dit Instructable u moet zitten kundig voor een A Ttiny85/45 met een arduino program. Het klinkt misschien ingewikkeld, maar het is echt niet. Na wat onderzoek gedaan kan niet vind ik veel info over hoe dit zou moeten gebeuren. Ik heb echter vinden
Hoe te programmeren met behulp van de arduino uno attiny

Hoe te programmeren met behulp van de arduino uno attiny

ik wilde even een kleine arduino voor mijn paar projecten omdat het kopen van een arduino voor elk project zal zijn te duur voor een 15 yrs oud guy!Stap 1: Dingen die je moetArduino IDEATtiny bestanden op je arduino IDEU kunt downloaden van de bestan
Multiplexing van vier 7-segment displays met behulp van Shift registreert Arduino

Multiplexing van vier 7-segment displays met behulp van Shift registreert Arduino

Hallo iedereenIk ontwierp een eenvoudige manier om het multiplexen van vier 7-Segment displays met behulp van Shift registreert en een ArduinoLaten we het 7 segment display multiplexStap 1: Stap-1: laten we ontwerpen Neem vier 7-segment displays en h
Verzenden en ontvangen van MIDI met Arduino

Verzenden en ontvangen van MIDI met Arduino

Dit instructable zal u tonen hoe te een Arduino gebruiken voor het verzenden en ontvangen van een verscheidenheid van MIDI-berichten, zodat u kunt beginnen met het opbouwen van uw eigen MIDI-controllers en instrumenten. Eerst ik zal praten een beetje
Een Wireless Smart Home (was: At Home simulator en alarm met Arduino of Atmega328 (bijgewerkt mei 2016))

Een Wireless Smart Home (was: At Home simulator en alarm met Arduino of Atmega328 (bijgewerkt mei 2016))

Opmerking: is er nu een android bluetooth control app ibble voor dit projectOpmerking: Hoewel dit begon als een project simuleren van mijn aanwezigheid thuis, het is uitgegroeid tot een slim huis, dus als ik dit InstructableWanneer mensen op vakantie
Attiny25/45/85 politie licht, met Arduino!

Attiny25/45/85 politie licht, met Arduino!

Hallo, in dit project ik wil je laten zien hoe het bouwen van een multi functionele politie licht met een Attiny25/45/85.Serval animaties, die kunnen worden veranderd met een knop op de printplaat zal hebben, het heeft 2 kanalen, die kunnen worden ge
Uitstappen van de Bank, met Arduino, 3d gedrukte behuizing en geprogrammeerd met Embrio

Uitstappen van de Bank, met Arduino, 3d gedrukte behuizing en geprogrammeerd met Embrio

Het basisidee is om iets dat detecteren kan wanneer mijn honden op de bank krijgen als ik er niet ben en "hen aanmoedigen te uitstappen" te creëren. Dit wordt bereikt met een passieve Ifrared sensor en maken geluiden dat houd niet van de honden.
Een 15-LED RGB klok met Arduino kern

Een 15-LED RGB klok met Arduino kern

De RGB-klok maakt gebruik van het RGB-kleur samenstelling model gebruikt in alle kleur toont. Dit model maakt gebruik van drie 'basic' kleuren, namelijk rood, groen en blauw, om te bouwen van een andere 'composiet' kleur van het spectrum. Met RGB-klo
AtoZ van RC hobby + DIY radio met ARDUINO

AtoZ van RC hobby + DIY radio met ARDUINO

Wikipedia omschrijft RC-voertuig alsEen afstandsbediening voertuig is een voertuig dat op afstand wordt bestuurd door een betekent dat de beweging met een externe oorsprong niet tot het apparaat beperkt. Dit is vaak een bedieningsorgaan radio, kabel
Decoderen en verzenden van 433MHz RF codes met Arduino en rc-switch

Decoderen en verzenden van 433MHz RF codes met Arduino en rc-switch

In deze tutorial zal ik u tonen hoe te een Arduino gebruiken voor het decoderen van de signalen van RF afstandsbedieningen, en hen op afstand bedienen van sommige schakelopties lichtnet en een garagedeur opnieuw te sturen.Opmerking: Deze handleiding
DIY handgemaakte Hexapod met arduino (Hexdrake)

DIY handgemaakte Hexapod met arduino (Hexdrake)

Hallo, ik ben David en in dit instructable zal ik u tonen hoe ik gemaakt deze hexapod hexapod wiens naam Hexdrake is.Sinds ik 16 was, raakte ik geïnteresseerd in elektronische en later in robotica. Interessant na zekere mate krijgen en programmeren m
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