Marfi6
Vytvořené odpovědi
-
AutorPříspěvky
-
posjirka
Účastníkto ARDUXPP: ta nabiječka není navržena úplně správně ale hlavní věc je že využívá 5V napájení proto pro vyššěi napětí není vhodná. Využívá se toho, že na když je napájení 5V tak na vstupuarduina nebu nikdy víc. Když tam dáš 9V, tak odpáliš arduino (procesor) protože má katalogově max.5,5V, Dále odpálíš jeho vstupy, protože ty mají max. 0,6V+napájecí napětí atd.
jinak jestli sis všiml, tak na schématu není kreslená baterka 🙂 . Nejspíš to bylo myšleno trochu jinak , kdy 10Ohm odpor měl být ochranný / srážecí pro nabijení … . Bohužel takových „skvělích nápadů“ je plný internet.to Aleš: to víš, jednou to nabilo, tak to pustím do světa ať se ti nenažraní výrobci nabiječek zamyslí. vždyť to jde udělat mnohem jednodušejí … Navíc ta baterka postupně zvětšuje kapacitu – nafukuje se 🙂
Jerry
ÚčastníkJerry
ÚčastníkUž to funguje
Jerry
ÚčastníkMyslím, že původní kód pro vysílač není úplný. Trochu jsem tápal (jako začátečník) a po úpravě to začalo fungovat. Před tím jsem musel měnit proměnnou msg 0 a 1
Takhle už to funguje#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int msg[1];
RF24 radio(9,10);
const uint64_t pipe = 0xE8E8F0F0E1LL;
int SW1 = 7;void setup(void){
Serial.begin(9600);
radio.begin();
radio.openWritingPipe(pipe);}void loop(void){
if (digitalRead(SW1) == HIGH){
msg[0] = 111;
radio.write(msg, 1);}
else
radio.write(msg, 0);}Aleš
ÚčastníkMěří se to na bočníku 0,1ohm, takže při 2A na něm bude úbytek 0,2V. To by snad mobilu vadit nemuselo, i když jsem se setkal s tabletem, který pod 5V nenabíjel 🙁
Mimochodem, díval jsem se na ten program nabíječky z odkazu výš (http://www.allaboutcircuits.com/projects/create-an-arduino-controlled-battery-charger/). Na ničení NiMh akumulátorů dobré. Nabíjení ukončuje při napětí 1,6V a ne podle ΔV, jak se má nabíjení u těchto článků ukončovat. Ještě že tam má alespoň kontrolu teploty, protože jinak by mu při tom proudu, který tam má nastavený, polovina nabíjených článků vybouchala. To už rovnou může vzít zdroj 1,6V a k němu připojit akumulátor ;-( Jediné „přínosné“ je to měření rozdílu napětí pomocí 2 analogových vstupů.rerege
ÚčastníkTak s tou INou219 tady přišel Aleš … takže díky za info.
Ještě poslední dotaz než začnu nakupovat. Nebude nějaký úbytek napětí díky té vložce?
Já jen, že když se u rychlonabíječek u moderních telefonů použije jiný kábl (tenčí/neorigo) nabíjení spadne… Mám se toho nějak bát?
Nerad bych sestrojil sice skvělou vychytávku, ale pak balamutil čtenáře nepravdivými údaji, když mezi nabíječku a telefon vložím cizopasníka.
Váňa
PS: týjó já se t+ěím jak malej Jarda, jestli se to povede tak Vás zvu na kafe nebo Bernarda(ten nám teď zapojili na potrubí) :o)RadeCZEK
ÚčastníkJo, pomohlo to, moc děkuji!
ArduXPP
ÚčastníkTady na tý stránce to měří na A0 a A1 http://www.allaboutcircuits.com/projects/create-an-arduino-controlled-battery-charger/ , má tam 10 Ohm + využívá jen 5V + Kontroluje stav i baterky .
posjirka
Účastníkdělič napští samozřejmě jde, U proudu je to horší.VEm základní teorii, kdy zdroj má 12 a max. proud 2A. Dáš mu zátěž 10 Ohm (motor)
Ten má při 12V odběr 12/10 = 1,2A.
Když použiješ měřící odpor 1Ohm tak celkový odpor spotřebičů (motor + měřící odpor má 11 Ohm). Tento komplet má ale odběr 12/11 = 1,09A takže sisi zavedl chybu měření o 0,11A z 1,2A. Navíc motor nedostává 12V. ztráto na odporu je 1,09 A * 1 Ohm = 1,09V.
Zdroj měl 12V na motor se dostane 12-1,09 = 10.9V … Ten asi nejde na 100 % 🙂posjirka
Účastníkto rozhodně nepůjde. 10 Ohm je extrémně moc. takový úbytek napětí by ovlivnil celkový průběh, nebo ho spíš totálně zabil.
Při 5V je úbytek 0,5V 10 procent. To se ještě dá přežít, takže pro 2A použít 0,22Ohm je v pořádku, ik dyž na hraně….
Vem si že napájích 5V mobil a na mobilu je 4,5V … to asi není ideální stav 🙂ArduXPP
ÚčastníkV jednom odkazu je použit rezistor 10 Ohm. Já mám k mání 65 Ohm.
Když ale počítám podle toho vzoru, tak to vychází 65*3=195V .Chtěl jsem testovat solární panel 12V, bez stabilizátoru, třeba, že by šel udělat dělič na A0 a A1 🙂 ? To asi nepujde.
posjirka
Účastníkpřesně jak píšeš. INA219 by ti to mohlo vyřešit. Abych přiznal barvu : o tomto řešení jsem nevěděl. Díky za poučení 🙂
Jinak už to možná komplikuju ale použil bych Sd kartu a LCD display, nebo 2 LED diody
Po připojení by na SD kartě zavedl nový soubor (1.csv). Pokud by byl obsazen inkremntoval by nahoru a založil další (vhodné pro případné krátkodobé přerušení napájení třeba na zlomeném kabelu)
Rozsvítil by LED signalizující záznam.
po určitém, čase (třeba 10s, nebo 1 minuta) by si změřil proud a něpětí. Tyto údaje by zaznamenal do souboru.
Když by proud byl menší než dolní mez (třeba 20mA) což by signalizovalo ukončení nabijení, rozsvítil by LED signalizující ukončení nabijení. Zároveň by zhasnul LED isgnlizující záznam.Vojtěch Vosáhlo
ÚčastníkPředpokládám že máte klon s CH340. Zkuste omrknout toto: http://www.instructables.com/id/Arduino-Nano-CH340/
Vojtěch Vosáhlo
ÚčastníkK počítání rezistoru určitě doporučuju nějaký kalkulátor online. Jinak by to bylo asi hodně počtů. Např: http://www.petervis.com/GCSE_Design_and_Technology_Electronic_Products/transistor_base_resistor_calculator/transistor_base_resistor_calculator.html
Vše co to chce by jste měl mít v datasheetu tranzistoru. Pokud vím tak s úbytkem napětí se nepočítá. Taková zažitá věc je dávat rezistory 10k, to většinou funguje ale lepší je to propočítat. Ten R2 je podle využití pullup nebo pulldown. Zajišťuje aby byla např báze tranzistoru vždy v nějakém stavu a nejen „floating“. Tzn tento rezisto dostává na pin pozitivní napětí nebo zemi i pokud mikrokontolér na pin nic nepouští. U avr může být tento rezistor nahrazen nastavením stavu pinu místo INPUT na INPUT_PULLUP. Většinou je ale lepší řešit to extérně.
rerege
ÚčastníkNu, snažil jsem se, ale koukám že asi málo :o)
psal jsem, že potřebuji měřit průběh nabíjení mobilu a holt nabíječky jsou dnes různé…
CSV na kartu by v pohodě stačilonašel jsem s INA219 třeba toto:
http://henrysbench.capnfatz.com/henrys-bench/arduino-current-measurements/ina219-arduino-current-sensor-voltmeter-tutorial-quick-start/stačilo by to? S tím, že místo odporu s LED by byl mobil a místo baterie nabíječka ?
Mezitím bych si ukládal v mobilu kolik kdy je kolik procent – appka buď bude, nebo si jí naprogramuji…posjirka
Účastníkto musíš říct na začátku co chceš vlastně měřit. Bez toho to nejde.
1W kde jsem vzal? 0,1Ohm a proud 2A = ztráta 0,2V
Ztrátový výkon = 0,2V * 2A = 0,4W . 1W v pohodě.
Při 3A by to bylo 0,1Ohm * 3A = 0,3V => ztrátový výkon 0,3V * 3A = 0,9W to je tipťop bez rezerv.
Proto je třeba si říct co vlastně chceš a v jakých paramaterech.
Napětí bych asi vyřeišl tak, že bych arduino napájel 3,3V.
Proč? Stabilizátor 3,3V bez problému bude fungovat jak na 5V tak na 12V.
Navíc můžeš použít třeba SD kartu na ukládání dat (ta potřebuje 3,3V napájení i komunikaci). Když to uložíš do CSV formtu, tak to v excelu v pohodě otevřeš a můžeš tvořit grafy.eXMarty
ÚčastníkDěkuji,
určitě je mi jasné že je potřeba znát proud. Popravdě nemyslím si že bych se dostal přes tu 1,5A. Jak pak spočítat proud LEDkama tuším, ale jestli musím počítat nějak s úbytkem napětím na tranzistoru mezi D a S. Omlouvám se opravdu sem se zatím dost dobře nezorientoval.
Jinak děkuji za typ tranzistoru. Jen ještě jaké zvolit odpory (ty co mám na schématu označen R1 a R2 – viděl jsem také zapojení a text, kde ten R1 vynechávají úplně?Ještě jednou předem moc díky za rady
Čím konkrétnější tím budu raději, hlavně když mi dáte radu jak spočítat potřebné odpory abych již znovu nemusel otravovat když budu nějak pozměňovat zapojení.
Vojtěch Vosáhlo
ÚčastníkChce to vědět jaký proud bude tranzistor/fet spínat. To je základ. Pro menší proudy a napětí se dá použít menší tranzistor, např BD140 a nebo další řady. Ty dokáží spínat až 1,5A. Varianta pro vyšší proud a napětí jsou darlingtonovy tranzistory, např TIP120 spínající až 5A. Poté pro ještě větší zátěže se dá použít FET. U led si tedy zjistěte proud a napětí, poté se dá počítat.
Aleš
ÚčastníkMožná by šlo použít toto:
INA219
Bohužel mi ještě z číny nepřišel, takže zkušenosti s tímto obvodem nemám. Ale podle datasheetu by to mělo umět měřit proud docela přesně.ArduXPP
ÚčastníkMěl bych pár otázek, co znamená 0.1 Ohm/ 1W ? Mě zajímá kde se vzal 1W .
Co když budu chtít měřit větší Volty než je limit arduino 5V, třeba 12V .
Jak se vypočítává citlivost ?rerege
ÚčastníkAhoj posjirka – moc díky za první helf
Ano potřebuji pouze sledovat, jak probíhá nabití telefonu… takže
origo nabíječka od telefonu
|
|
něco s USB na obou koncích ————————– Arduino Uno
|
|(nejlépe zde již bez káblu)
|
telefon5V asi nepostačí, neb jsem již recenzoval např. Umi Plus a ten disponuje rychlonabíjením – nevím jak to všechno funguje, ale na nabíječce jsou hodnoty:
5V/7V/9V – 1,67A
12V – 1,25Adoufám, že nejsem první člověk na zeměkouli, koho něco takového napadlo :o)
Váňa
posjirka
Účastníktak já už chybu našel a není tvoje 🙂
Nevím proč, ale používají radio.read() jako funkci s návratovou hodnotou ( done = …).
Tato funkce ale žádnou návrtotvou hodnotu nepodporuje a tudíž nemůže ani fungovat while …Ve výsledku zkus tuto verzi:
#include <SPI.h> #include <nRF24L01.h> #include <RF24.h> int msg[1]; RF24 radio(9,10); const uint64_t pipe = 0xE8E8F0F0E1LL; int LED1 = 3; void setup(void){ Serial.begin(9600); radio.begin(); radio.openReadingPipe(1,pipe); radio.startListening(); pinMode(LED1, OUTPUT); } void loop(void){ if(radio.available()){ //bool done = false; //while (!done){ while (radio.available()){ radio.read(msg, 1); Serial.println(msg[0]); if (msg[0] == 111){ delay(10); digitalWrite(LED1, HIGH); } else { digitalWrite(LED1, LOW); } delay(10); } } else { Serial.println("No radio available"); } }
a pro vkládání kodu používej párové značky CODE (předposlední tlačítko při psaní odpovědi) jinka se ti to rozhází, přepíšou se ti dvojité úvozovky atd.
Jerry
Účastník#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int msg[1];
RF24 radio(9,10);
const uint64_t pipe = 0xE8E8F0F0E1LL;
int LED1 = 3;void setup(void){
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();
pinMode(LED1, OUTPUT);}void loop(void){
if (radio.available()){
bool done = false;
while (!done){
done = radio.read(msg, 1);
Serial.println(msg[0]);
if (msg[0] == 111){delay(10);digitalWrite(LED1, HIGH);}
else {digitalWrite(LED1, LOW);}
delay(10);}}
else{Serial.println(„No radio available“);}}Jerry
Účastníkmám 1.6.12 tak nevím jestli je to špatně
posjirka
Účastníkpředpokládám chyhu v knihovnách. Stáhni si ty z instructables.com
http://www.instructables.com/id/Wireless-Remote-Using-24-Ghz-NRF24L01-Simple-Tutor/?ALLSTEPS
a nainstaluj si je.
Někdy je na vině i samotné Arduino IDE a je třeba jej přeinstalovat nebo alespoň pročistit instalované knihovny.Podle ohlasů na istructable je na vině knihovna RF24 …
Jerry
ÚčastníkAhoj
V prvním příspěvku mi při kompilaci kódu pro RX na řádku „done = radio.read(msg, 1);“ vypisuje chybu. Nemůžu přijít na to ke to je.
Děkujiposjirka
Účastníkmyslím to takto.
Připojením pinu přímo na +5V je skvělá cesta do pekel. Nikdy se nepřipojuje napájení přímo bez ochranného odporu. Hrozí zničení vstupních obvodů.Attachments:
fidos
ÚčastníkPauzu uz sem zkousel nastavit na 10ms, ale stejny. Vysilac mam zapojeny primo na +5V, proc se tam musi davat odpor? Jinak nerozumim “ a pak se tlačítkem ten pin přizemní “ – dam odpor na +5V a co dal?
Jerry
ÚčastníkDíky
-
AutorPříspěvky