Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Arduino a led zesilovač RGB
Jdi na stránku 1, 2, 3, 4  Další
 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 10:43    Předmět: Arduino a led zesilovač RGB Citovat

Zdravím všechny bastlíře.
dotaz jsem tu nenašel, snad jsem správně hledal...ale nepovedlo se. Snažím se sestrojit ovládání led pásku přes arduino, ze spousty důvodů jsem ale nechtěl jít cestou vlastního driveru s transistory a proto jsem se rozhodl využít na instructables nalezený obvod.
případně celé instructable zde:
http://www.instructables.com/id/LED-Strip-Controller-w-LED-Amp-Arduino/

Zdálo se mi to celé naprosto geniální a jednoduché do doby, kdy mi přišly všecky součástky a já zjistil, že to tak jednoduché asi není.

Můj obvod se liší jen tím, že používám jiné piny... resp. 9, 10, 11 (jsou pwmkové) a přijde mi to logičtější...9...10...11 R...G...B



Vyšší rozlišení: https://www.flickr.com/photos/holdinginfinity/15606991094/sizes/c/


Pro jistotu přikládám i jak vypadá můj obvod. Ať dělám co dělám, tak to prostě svítit nebude. Z Arduina leze až 5V...resp. voltmetr hopsá, kvůli pwm a změnám barev...

12v zdroj dává sice jen 9.8 V ale předpokládám, že arduinu to udělá dobře...a pásek napřímo svítí i tak.

Pokud připojím jen pásek a jednu barvu - rozsvítí se, když připojím zesilovač a kterékoli barvy, rozsvítí se. Jakmile přidám arduino...ani ťuk.

Aktuálně už ze zoufalství nepoužívám ani svůj kód ale tento z instructables:

kód:

int ledPinR = 9;
int ledPinG = 10;
int ledPinB = 11;

void setup()  {
}

void loop()  {
  // Red
  for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
    analogWrite(ledPinR, fadeValue);         
    delay(30);                           
  }
  for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
    analogWrite(ledPinR, fadeValue);         
    delay(30);
  }
  // Green
  for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
    analogWrite(ledPinG, fadeValue);         
    delay(30);                           
  }
  for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
    analogWrite(ledPinG, fadeValue);         
    delay(30);
  }
  // Blue
  for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
    analogWrite(ledPinB, fadeValue);         
    delay(30);                           
  }
  for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
    analogWrite(ledPinB, fadeValue);         
    delay(30);
  }
  // White
  for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
    analogWrite(ledPinR, fadeValue);         
    analogWrite(ledPinG, fadeValue);
    analogWrite(ledPinB, fadeValue);
    delay(30);                           
  }
  for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
    analogWrite(ledPinR, fadeValue);         
    analogWrite(ledPinG, fadeValue);
    analogWrite(ledPinB, fadeValue);
    delay(30);
  }
}


Pásek má společné + , je možné, že kód je pro společné - ? Mám pocit, že snad pásky se společným mínus ani neexistují, ne? Nicméně, i kdybych měl obrácený cyklus PWM tak by něco muselo aspoň bliknout, ne? :/

Předem děkuji všem, za jakoukoli reakci...jsem zoufalý! Sad


Děkuji a těším se na vaše odpovědi, kolegové bastlíři! Smileopraven druhý náčrt


Naposledy upravil HoldingInfinity dne čt leden 08 2015, 11:43, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ross4435897



Založen: Nov 10, 2009
Příspěvky: 426
Bydliště: Brno

PříspěvekZaslal: čt leden 08 2015, 11:01    Předmět: Citovat

int ledPinR = 9;
int ledPinG = 10;
int ledPinB = 11;

pinMode(ledPinR, OUTPUT);
pinMode(ledPinG, OUTPUT);
pinMode(ledPinB, OUTPUT);
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Michal22



Založen: Mar 28, 2012
Příspěvky: 7828
Bydliště: Brno

PříspěvekZaslal: čt leden 08 2015, 11:11    Předmět: Citovat

Jestli máš na pásku v místě, které máš označené +12V, jen 0,4V, tak to svítit nemůže.
_________________
Civilizace založená na oboustranné lepící pásce nemůže dobře skončit...
I kdyby se z tebe jednou stal král, neodsuzuj lidi, kteří ti nebudou provolávat slávu- raději se zeptej sám sebe, proč tomu tak není...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 11:15    Předmět: Citovat

ross: Děkuji za odpověď. Jsem teď mimo dosah k skutečnému duinu, ale vyzkoušel jsem pomocí simulátoru http://123d.circuits.io

Na výstup z arduina jsem po úpravě kódu dle tvého návrhu přidal osciloskop ale ta křivka vypadá stejně, ať tam ten pinmode je nebo není.

Zakopaný pes bude asi jinde... Děkuji

I když teď na to koukám, že když není nastavený pinmode tak to hází míň proudu...a že by to ten zesilovač nebral, když je málo proudu?

Předem dík za odpověď, Ross i ostatní Smile


Naposledy upravil HoldingInfinity dne čt leden 08 2015, 11:21, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
taz



Založen: May 16, 2007
Příspěvky: 316
Bydliště: Ostrava

PříspěvekZaslal: čt leden 08 2015, 11:20    Předmět: Citovat

Kolik by si tam chtěl naměřit, když ledky mají mít napájení 12V a ty je napájíš 5V z duina.... viz tvůj druhý obrázek...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 11:23    Předmět: Citovat

mno ano, ale tak to má i ten chlapík z instructables a jemu to funguje... :/ o to by se měl starat právě ten amp, že by měl ztrátu napětí na dlouhým pásku vzít a naboostovat zas na 12, nebo teda tak jsem to aspoň pochopil z toho odkazovaného instructable? Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 11:24    Předmět: Citovat

Michal22 napsal(a):
Jestli máš na pásku v místě, které máš označené +12V, jen 0,4V, tak to svítit nemůže.


to je mi jasný...já to uvedl jako jeden ze symptomů proč to nesvítí, že to může vyjasnit můj problém třeba Cry
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 11:36    Předmět: Citovat

jaj teď mi to došlo...na tom mým obrázku chybí napájení ze zdroje do toho zesilovače...tam jde 12V do toho zesilovače zvlášť...a - je spojené s tím arduiním, za chvili to opravím.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
dreamer



Založen: Oct 22, 2014
Příspěvky: 384

PříspěvekZaslal: čt leden 08 2015, 11:37    Předmět: Citovat

Nenapsal jsi jaké máš arduino ale tak jak to máš nakreslené to opravdu nemůže fungovat. 12V připojíš na arduino, tam je stabilizátor který upraví napětí na 5V (u některých arduin na 3,3) a toto napětí pak posíláš do budiče led tak je jasné že to nemůže fungovat. Ten obvod který nazýváš zesilovačem musíš napájet rovnou ze zdroje a arduinem jenom řídit, jinak to fungovat nebude.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ross4435897



Založen: Nov 10, 2009
Příspěvky: 426
Bydliště: Brno

PříspěvekZaslal: čt leden 08 2015, 11:41    Předmět: Citovat

a funguje ti to vubec? zkus treba ten nejjednodussi test .... pak na osciloskopu musis videt 50% PWM


int ledPin = 9; // LED connected to digital pin 9

void setup()
{
pinMode(ledPin, OUTPUT); // sets the pin as output
}

void loop()
{
analogWrite(ledPin, 127);
}


Naposledy upravil ross4435897 dne čt leden 08 2015, 11:44, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 11:44    Předmět: Citovat

dreamer napsal(a):
Nenapsal jsi jaké máš arduino ale tak jak to máš nakreslené to opravdu nemůže fungovat. 12V připojíš na arduino, tam je stabilizátor který upraví napětí na 5V (u některých arduin na 3,3) a toto napětí pak posíláš do budiče led tak je jasné že to nemůže fungovat. Ten obvod který nazýváš zesilovačem musíš napájet rovnou ze zdroje a arduinem jenom řídit, jinak to fungovat nebude.



ano, ano, to jsem přesně teď opravoval....už je tam ten náčrt správně... Sad pardon.

jinak arduino je UNO


Naposledy upravil HoldingInfinity dne čt leden 08 2015, 11:47, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
HoldingInfinity



Založen: Jul 07, 2011
Příspěvky: 43

PříspěvekZaslal: čt leden 08 2015, 11:46    Předmět: Citovat

ross4435897 napsal(a):
a funguje ti to vubec? zkus treba ten nejjednodussi test .... pak na osciloskopu musis videt 50% PWM


int ledPin = 9; // LED connected to digital pin 9

void setup()
{
pinMode(ledPin, OUTPUT); // sets the pin as output
}

void loop()
{
analogWrite(ledPin, 127);
}


bohužel v reálu osciloskop nemám a v simulátoru rgb zesík není.

Nicméně vyzkouším tam během odpoledne nacpat pinmode output...někde jsem totiž teď načetl že, když není nastavený pin jako výstupní, nepustí moc proudu...možná je to tím?

jinak ale výstup arduina si u reálného obvodu opravdu hopká od 0 do těch 5 v...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Michal22



Založen: Mar 28, 2012
Příspěvky: 7828
Bydliště: Brno

PříspěvekZaslal: čt leden 08 2015, 12:18    Předmět: Citovat

Pokud ti na pásek nejde 12V, tak se s tím můžeš mořit jak chceš, stejně nic nerozsvítíš.
Takže, ještě jednou- kolik máš v na pásku v místě označeném +12V? Jestli jenom 0,4V, tak je problém bd v tom RGB zesilovači nebo v jeho napájení.

_________________
Civilizace založená na oboustranné lepící pásce nemůže dobře skončit...
I kdyby se z tebe jednou stal král, neodsuzuj lidi, kteří ti nebudou provolávat slávu- raději se zeptej sám sebe, proč tomu tak není...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
MiloPS3



Založen: Aug 07, 2010
Příspěvky: 262

PříspěvekZaslal: čt leden 08 2015, 12:46    Předmět: Citovat

vyskousej jestly mas spravne nastaveny ty piny, pripoj na ne obycejny ledky z odporama a uvidis jestly to funguje,
kód:
pin_ledR  output
pin_ledG  --"--
pin_ledB  --"--

loop
pwm_ledR =50
pwm_ledG =150
pwm_ledB =255
delay(1000s)
pwm_ledR =150
pwm_ledG =255
pwm_ledB =50
delay(1000s)
pwm_ledR =255
pwm_ledG =50
pwm_ledB =150
nedelam s ARD.. takze netusim jak to spravne napsat, ale pro pochopeni to snad staci
a jeste
citace:
255 is off and 0 is on.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Cowley



Založen: Feb 04, 2005
Příspěvky: 3302

PříspěvekZaslal: čt leden 08 2015, 17:51    Předmět: Citovat

Podle tohoto příkladu a obrázků se to zdá všechno OK.

http://www.usledsupply.com/shop/rgb-mini-amplifier-ttl.html
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Jdi na stránku 1, 2, 3, 4  Další
Strana 1 z 4

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.15 sekund