Fórum témák
- • Autórádió (fejegység) problémák, kérdések, válaszok
- • FET vezérlése
- • Mosogatógép hiba
- • Eredményjelző
- • Számítógép hiba, de mi a probléma?
- • ARM CPU assembler programozás
- • Li-Po - Li-ion akkumulátor és töltője
- • Labortápegység készítése
- • Zajos transzformátor
- • Klíma szervizelés, javítás
- • Kombikazán működési hiba
- • LED-es világítás
- • Arduino
- • Elektromos távirányítós kapunyitó
- • Felajánlás, azaz ingyen elvihető
- • Audiofil, High End Audio
- • Mikrohullámú sütő javítás, magnetron csere, stb.
- • Erősítő mindig és mindig
- • Opto kapu és triak
- • Villanymotor bekötése
- • Mosógép vezérlők és általános problémáik
- • Boombox javítás
- • Oszcillátor építése rajzok
- • PLC kérdések
- • Villanyszerelés
- • Kutya macska (vad) riasztó
- • PC táp átalakítás
- • Kapcsolási rajzot keresek
- • Opel Astra elektromos hibák
- • Rádió adó építése
- • Áramváltó trafóval áram mérés, hogy?
- • Elektromágnes
- • Rossz HDD javítás, mentés
- • Rádió áthangolása, OIRT - CCIR konverter
- • Ultrahangos párásító
- • EAGLE NYÁK tervező
- • 433 MHz adóvevő modul tapasztalatok
- • ESR mérő
- • Analóg voltmérő (multiméter)
- • WLAN router
- • Tápegységgel kapcsolatos kérdések
- • Kapcsolóüzemű táp 230V-ról
- • Rádióamatőrök topikja
- • Retro számítógépek
- • Marantz erősítő hiba
- • Videoton EA-7386-s erösítő
- • Villanypásztor
- • Klíma beszerelése, fűtés-hűtés házilag
- • Hegesztő inverter javítás
- • TV-k tulajdonságai, vásárlás
- • Fejhallgató erősítő
- • Kazettás magnó (deck) javítása
- • TV hiba, mi a megoldás?
- • Gáz fogyasztás monitorozása
- • Crystal radio - detektoros rádió
» Több friss téma
|
A klónok CH340 Soros-USB illesztőjének drivere ( Letöltés)
Ez megerősíti, hogy átlagolás kell. Illetve lehet még probléma a táp instabilitása. Pl. elképzelhető, hogy amikor elindul a motor, akkor az Arduino resetelődik. Ha van szkópod, érdemes lenne ránézni az Arduino tápjára üzem közben.
Szia!
Megnéztem szkópal az 5V stabil induláskor illetve az aksi feszültsége is csak 1V-ot esik induláskor, illetve ha reszetelődne az ic akkor ugye a gyújtást mindjárt le is kapcsolná, tehát nem a tápfesz a gond. Erre az átlagolásra tudnál esetleg egy példát vagy esetleg valami linket, mert én még nem csináltam sajna ilyet.
Alább Agent_Z adott kódot az átlagoláshoz!
(#) |
roland9 válasza (Felhasználó 120038) hozzászólására (») |
Aug 4, 2016 |
 |
/ |
 |
|
Szia!
Mit rontottam el? mindjárt az elején "int aramatlag = 5;" -nál hibát ír.
int feszultseg = 0;
int szivato = 2;
int szivatoki = 8;
int aramatlag = 5;
int gerjesztes = 9;
int onindito = 10;
int gyujtas = 12;
int szint = 7;
void setup() {
pinMode(feszultseg, INPUT);
pinMode(szivato, INPUT);
pinMode(szivatoki, OUTPUT);
pinMode(gerjesztes, OUTPUT);
pinMode(onindito, OUTPUT);
pinMode(gyujtas, OUTPUT);
pinMode(szint, INPUT);
float(AramAtlag);
}
void loop() {
AramAtlag=0.0;
delay(100);
if (digitalRead(feszultseg) == HIGH){
digitalWrite(gyujtas,LOW);
digitalWrite(onindito,LOW);
digitalWrite(gerjesztes,LOW);
delay(100);
if (digitalRead(szint) == HIGH){
if (digitalRead(szivato) == HIGH){
digitalWrite(szivatoki,HIGH);
delay(100);
digitalWrite(szivatoki,LOW);
delay(50);
digitalWrite(gyujtas,HIGH);
delay(100);
digitalWrite(onindito,HIGH);
delay(300);
digitalWrite(onindito,LOW);
delay(300);
digitalWrite(gerjesztes,HIGH);
delay(100);
}
if (digitalRead(szivato) == LOW){
digitalWrite(gyujtas,LOW);
digitalWrite(onindito,LOW);
digitalWrite(gerjesztes,LOW);
delay(100);
digitalWrite(gyujtas,HIGH);
delay(100);
digitalWrite(onindito,HIGH);
delay(300);
digitalWrite(onindito,LOW);
delay(300);
digitalWrite(gerjesztes,HIGH);
delay(100);
}
}
}
}
Float AmpertAtlagol(){
float ertek;
ertek=0;
for (int i=0; i < 50; i++){
ertek+=520 //Ide kellene a lábról olvasott érték, amperre számolva, mint ahogy fentebb írtuk neked
delay(10); //de lehet ennél több is kicsivel. ha 50x fut le akkor fél másodperc lesz!
}
ertek=ertek/50
return ertek;
}
Szia!
69. sor: float kisbetűvel
27. sor: AramAtlag nincs definiálva
megj: ha az aramatlag-ot int-ként definiálod, akkor nincs sok értelme lebegőpontos számot tölteni bele. sor:27
73. sor: hiányzik ";"
78. sor: hiányzik ";"
De ezeket szerintem neked is írja a fordító hibának. Nem olvasod?
(#) |
(Felhasználó 120038) válasza roland9 hozzászólására (») |
Aug 5, 2016 |
 |
/ |
 |
|
int feszultseg = 0;
2.int szivato = 2;
3.int szivatoki = 8;
4.float AramAtlag =0.0; //Nullával kell kezdeni. A float képes tizedes törteket tároni, pl 123.954131 az int csak egészeket, pl 5,8,145,566 stb.
5.int gerjesztes = 9;
6.int onindito = 10;
7.int gyujtas = 12;
8.int szint = 7;
9.
10.
11.
12.
13.void setup() {
14. pinMode(feszultseg, INPUT);
15. pinMode(szivato, INPUT);
16. pinMode(szivatoki, OUTPUT);
17. pinMode(gerjesztes, OUTPUT);
18. pinMode(onindito, OUTPUT);
19. pinMode(gyujtas, OUTPUT);
20. pinMode(szint, INPUT);
21. //float(AramAtlag); Ez nem kell ide, mert már definiáltunk egy ilyen változót fentebb
22.}
23.
24.
25.void loop() {
26.
27. AramAtlag=0.0; //Ez jó!
delay(5);
28. //Ha itt szeretnéd megkapni az átlagot, akkor:
Aramatlag=AmpertAtlagol(); //Azaz az Aramatlag változód így veszi fel az AmpertAtlagol függvén értékét!!!! Innentől lehet majd olyat hogy: If (Aramatlag<8) { .... stb,stb.
29. delay(100);
30. if (digitalRead(feszultseg) == HIGH){
31. digitalWrite(gyujtas,LOW);
32. digitalWrite(onindito,LOW);
33. digitalWrite(gerjesztes,LOW);
34. delay(100);
35. if (digitalRead(szint) == HIGH){
36. if (digitalRead(szivato) == HIGH){
37. digitalWrite(szivatoki,HIGH);
38. delay(100);
39. digitalWrite(szivatoki,LOW);
40. delay(50);
41. digitalWrite(gyujtas,HIGH);
42. delay(100);
43. digitalWrite(onindito,HIGH);
44. delay(300);
45. digitalWrite(onindito,LOW);
46. delay(300);
47. digitalWrite(gerjesztes,HIGH);
48. delay(100);
49. }
50.
51. if (digitalRead(szivato) == LOW){
52. digitalWrite(gyujtas,LOW);
53. digitalWrite(onindito,LOW);
54. digitalWrite(gerjesztes,LOW);
55. delay(100);
56. digitalWrite(gyujtas,HIGH);
57. delay(100);
58. digitalWrite(onindito,HIGH);
59. delay(300);
60. digitalWrite(onindito,LOW);
61. delay(300);
62. digitalWrite(gerjesztes,HIGH);
63. delay(100);
64. }
65. }
66. }
67.}
68.
69.float AmpertAtlagol(){
70.float ertek;
71.ertek=0.0;
72.for (int i=0; i < 50; i++){
73.ertek+=520; //Ide kellene a lábról olvasott érték, amperre számolva, mint ahogy fentebb írtuk neked
74.
75.delay(10); //de lehet ennél több is kicsivel. ha 50x fut le akkor fél másodperc lesz!
76.}
77.
78.ertek=ertek/50.0;
79.return ertek;
80.}
Valami ilyesmire gondoltam, remélem jó, fordítani továbbra sem tudom, mert még nem fogytak el a zártszelvények.
Figyelj a sorvégi ";" karakterekre! (én nem tettem....  )
(#) |
roland9 válasza (Felhasználó 120038) hozzászólására (») |
Aug 5, 2016 |
 |
/ |
 |
|
Szia!
Sikerült lefordítanom, de nem működik az áram mérés valamiért, nem kapcsol ki.
int feszultseg = 0;
int szivato = 2;
int szivatoki = 8;
float AramAtlag = 0.0; //Nullával kell kezdeni. A float képes tizedes törteket tároni, pl 123.954131 az int csak egészeket, pl 5,8,145,566 stb.
int gerjesztes = 9;
int onindito = 10;
int gyujtas = 12;
int szint = 7;
void setup() {
pinMode(feszultseg, INPUT);
pinMode(szivato, INPUT);
pinMode(szivatoki, OUTPUT);
pinMode(gerjesztes, OUTPUT);
pinMode(onindito, OUTPUT);
pinMode(gyujtas, OUTPUT);
pinMode(szint, INPUT);
}
void loop() {
AramAtlag=0.0; //Ez jó!
delay(5);
delay(100);
if (digitalRead(feszultseg) == HIGH){
digitalWrite(gyujtas,LOW);
digitalWrite(onindito,LOW);
digitalWrite(gerjesztes,LOW);
delay(100);
if (digitalRead(szint) == HIGH){
if (digitalRead(szivato) == HIGH){
digitalWrite(szivatoki,HIGH);
delay(100);
digitalWrite(szivatoki,LOW);
delay(50);
digitalWrite(gyujtas,HIGH);
delay(100);
digitalWrite(onindito,HIGH);
delay(300);
digitalWrite(onindito,LOW);
delay(300);
digitalWrite(gerjesztes,HIGH);
delay(100);
}
if (digitalRead(szivato) == LOW){
digitalWrite(gyujtas,LOW);
digitalWrite(onindito,LOW);
digitalWrite(gerjesztes,LOW);
delay(100);
digitalWrite(gyujtas,HIGH);
delay(100);
digitalWrite(onindito,HIGH);
delay(300);
digitalWrite(onindito,LOW);
delay(300);
digitalWrite(gerjesztes,HIGH);
delay(100);
}
}
}
AramAtlag = AmpertAtlagol(); //Azaz az Aramatlag változód így veszi fel az AmpertAtlagol függvén értékét!!!! Innentől lehet majd olyat hogy: If (Aramatlag<8)
if (AramAtlag<1) {
digitalWrite(gerjesztes, LOW);
digitalWrite(gyujtas, LOW);
}
}
float AmpertAtlagol() {
float ertek;
ertek=0.0;
for (int i=0; i < 50; i++){
ertek+=2650; //Ide kellene a lábról olvasott érték, amperre számolva, mint ahogy fentebb írtuk neked
delay(10); //de lehet ennél több is kicsivel. ha 50x fut le akkor fél másodperc lesz!
}
ertek=ertek/50.0;
return ertek;
}
(#) |
(Felhasználó 120038) válasza roland9 hozzászólására (») |
Aug 5, 2016 |
 |
/ |
1 |
|
Szia!
Még egyelőre seholsem mérsz áramot!
float AmpertAtlagol() {
float ertek;
float mertV;
float mertA;
mertV=0.0;
ertek=0.0;
mertA=0.0;
for (int i=0; i < 50; i++)
{
mertV=0.0;
mertV= analogRead(toltesfigy); //Meg kell adnod, hogy ez milyen láb, és milyen számmal!!! Mint a legelsőnek küldött kódodban a setup() előtt:int toltesfigy = 5; !!!! Setup-ban meg pinMode(toltesfigy, INPUT);
delay(5);
mertV=(mertV/1024) *5000;// így megkapod mV-ban a lábon mért értéket
mertA=((mertV-2500)/100); //2500mV az Offset. 100mV/A a meredekség, azaz Amperonként hány milivolttal lesz több a kimeneten a feszültség, de a ketyere leírásában benne kellene lennie.
ertek+=mertA;
delay(10);
}
ertek=ertek/50.0;
return ertek;
}
A hozzászólás módosítva: Aug 5, 2016
Sziasztok!
Van egy Arduino Uno R3-as boardom és egy FC-113 I2C bus LCD kijelzőhöz integrálva. Rengeteg helyen néztem már tutorialt hogy hogyan kell szóra bírni az lcd kijelzőt a LiquidCrystal_I2C nevezetű libraryval amit külön beimportálok az arduino fejlesztői programba, de akármit csinálok még csak a compiler sem tud rajta végig futni mert hol ezt a library-t nem ismeri fel vagy ha azt felismeri valami oknál fogva akkor az első függvényét amit hívok (létrehozom a példányt) azt írja ki hogy nem található ilyen function a könyvtárban. Lassan egy hete szenvedek vele megnéztem már rengeteg videót már azt hittem hogy én vagyok a gyökér hogy nem tudok libraryt importálni és a végén már azt is jútúbról néztem biztos ami biztos alapon de nem megy.
Ez a link volt amit utoljára próbáltam, de ez sem működik pedig vagy 5x csináltam újra a nulláról. Volt hogy még az IDE-t is újratelepítettem a könyvtárakkal együtt de semmi.
Valaki tudna nekem ezzel kapcsolatban segíteni? A hozzászólás módosítva: Aug 5, 2016
Melyik fordítót használod?
az Arduino 1.6.8-at használom annak a fordítóját. Azt írták több helyen is, hogy ezzel a verzióval simán működnie kéne.
Próbáld meg az 1.5.7est. Én belefutottam, hogy egy régebben működő program, az 1.6.x es verzióval már nem ment A hozzászólás módosítva: Aug 5, 2016
most próbáltam meg azzal is és nem működik. Pedig telepítettem a libraryt is és még mindig ezt írja ki:
LCD.ino:1:30: fatal error: LiquidCrystal_I2C.: No such file or directory
compilation terminated.
pedig ott van a könyvtárak mappában ez a file is.
Pontosan hova is tetted azt a fájlt? C:\Arduino\libraries ben van benne? Vagy nálad nem tudom hol van az arduino mappája, de azon belül a libraries mappába kellene lennie. A hozzászólás módosítva: Aug 5, 2016
Küldj légyszi egy linket, ahonnan letöltötted a library-t a LiquidCrystal-hoz.
igen oda van betéve úgy ahogy kicsomagolom a zip fájlból ide
Bővebben: Link
Erről a linkről töltöttem le. Több jútúb videóban is benne volt ez a link, hogy ez működő.
Ezt próbáld feltenni, ez nálam megy.
#include <Wire.h>
//#include <LiquidCrystal_I2C.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7);
#define BACKLIGHT_PIN 13
//LiquidCrystal_I2C lcd(0x38); // Set the LCD I2C address
//LiquidCrystal_I2C lcd(0x27, BACKLIGHT_PIN, POSITIVE); // Set the LCD I2C address
// Creat a set of new characters
const uint8_t charBitmap[][8] = {
{ 0xc, 0x12, 0x12, 0xc, 0, 0, 0, 0 },
{ 0x6, 0x9, 0x9, 0x6, 0, 0, 0, 0 },
{ 0x0, 0x6, 0x9, 0x9, 0x6, 0, 0, 0x0 },
{ 0x0, 0xc, 0x12, 0x12, 0xc, 0, 0, 0x0 },
{ 0x0, 0x0, 0xc, 0x12, 0x12, 0xc, 0, 0x0 },
{ 0x0, 0x0, 0x6, 0x9, 0x9, 0x6, 0, 0x0 },
{ 0x0, 0x0, 0x0, 0x6, 0x9, 0x9, 0x6, 0x0 },
{ 0x0, 0x0, 0x0, 0xc, 0x12, 0x12, 0xc, 0x0 }
};
void setup()
{
int charBitmapSize = (sizeof(charBitmap ) / sizeof (charBitmap[0]));
// Switch on the backlight
pinMode ( BACKLIGHT_PIN, OUTPUT );
digitalWrite ( BACKLIGHT_PIN, HIGH );
lcd.begin(16,2); // initialize the lcd
for ( int i = 0; i < charBitmapSize; i++ )
{
lcd.createChar ( i, (uint8_t *)charBitmap[i] );
}
lcd.home (); // go home
lcd.print("Hello, ARDUINO ");
lcd.setCursor ( 0, 1 ); // go to the next line
lcd.print (" FORUM - fm ");
delay ( 1000 );
}
void loop()
{
lcd.home ();
// Do a little animation by writing to the same location
for ( int i = 0; i < 2; i++ )
{
for ( int j = 0; j < 16; j++ )
{
lcd.print (char(random(7)));
}
lcd.setCursor ( 0, 1 );
}
delay (200);
}
Ok, nekem nem világos hova tetted. Az arduino könyvtárba c:\Arduino\libraries\LiquidCrystal_I2C\ -szóval ide tömörítetted ki?
A kód amit leírtál megint azt dobja ki, higy nincs ilyen függvény a megadott paraméterekkel.
exit status 1
no matching function for call to 'LiquidCrystal_I2C::LiquidCrystal_I2C(int, int, int, int, int, int, int, int)'
Egyébként igen a c:\Arduino\libraries\ Ide lett kitömörítve. Vagy rosszul csináltam ezt? Mert én úgy tudom hogy oda csak kitömörítem a mappát és benne a cpp meg header meg minden fájllal együtt.
igen nem jó úgy!
A readme-ben:
Idézet: „# Installation #
Create a new folder called "LiquidCrystal_I2C" under the folder named "libraries"”
Szóval kell csinálnod még egy könyvtárat "LiquidCrystal_I2C" névvel a ...\libraries-ba, majd oda tömörítsd ki. A hozzászólás módosítva: Aug 5, 2016
A zip fájlban is így van benne ahogy leírtad de ami gyakorlatilag egy új mappa és abban vannak benne a cuccok
Csak nem jó névvel szerintem.
Nem látom a könyvtárszerkezetedet, de véletlenül nem ilyen?
c:\.....\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master\?
Mert ez nem jó.
c:\Arduino\libraries\LiquidCrystal_I2C -Ide kell kitömöríteni a zip-ben lévő FÁJLOKAT csak, könyvtár nélkül.
Azaz a keywords.txt-t, a LiquidCrystal_I2C.cpp-t LiquidCrystal_I2C.h-t, readme.md-t az Example könyvtárral együtt.
Nálam ilyen és megy minden. A hozzászólás módosítva: Aug 5, 2016
Nem nekem sehol nincs ilyen, hogy library master. Nekem is így van ahogy másodjára írtad.
C:\ProgramFájlok(x86)\Arduino\libraries\LiquidCrystal_I2C\ Ide van kicsomagolva a LiquidCrystal_I2C ccp header és keywords meg minden fájl. Mellette ott van az examples meg minden.
Na figyu. Feltettem direkt egy arduino mentes gépre. Telepítettem az 1.5.7et. Utána elindítod, megkeresed fent a Sketc gombot, ott kiválasztod a import liobray -> jobbra fent lesz olyan hogy függvénykönyvtár hozzáadása, és kiválasztod a letöltött RAR-t (Arduino-LiquidCrystal-I2C-library-master). Arduino újraindít, és teszteled egy próbával. Nálam megy. A hozzászólás módosítva: Aug 5, 2016
Ajaj, akkor más a gond.
Olyan nem lehet, hogy valami windows dolog nem engedi neki betölteni? Más dll-ekkel is ezt csinálta? Az arduino-t rendszergazdai jogosultságokkal indítod?
(#) |
(Felhasználó 120038) válasza (Felhasználó 120038) hozzászólására (») |
Aug 5, 2016 |
 |
/ |
 |
|
Még valamit kipróbálhatnál esetleg.
Az egész Aruino könyvtárat mindenestül tedd át (simán másold) egy másik meghajtóra, lehet pendrive is, onnan indítsd a fejlesztökörnyezetet (arduino exe) és úgy próbáld meg.
64/32 bit probléma is lehet még, de azt nemtudom pontosan.
(#) |
roland9 válasza (Felhasználó 120038) hozzászólására (») |
Aug 5, 2016 |
 |
/ |
 |
|
Szia!
Nagyon, nagyon szépen köszönöm a segítséget neked és Balázs-nak is! Labortápról szépen működik a szerkezet, holnap délelőtt jelentkezem, hogy az aggregátorral is jól működik-e 
Van még mit tanulnom
(#) |
(Felhasználó 120038) válasza roland9 hozzászólására (») |
Aug 5, 2016 |
 |
/ |
 |
|
Szia!
Örölök, de azthiszem van benne hiba:
18. mertV=(mertV/1024) *5000;// így megkapod mV-ban a lábon mért értéket
// az 1024-et írd át 1023-ra.
Amúgy a pc-felé is kiírathatod a mért értéket, úgy könyebb ellenőrizni.
(#) |
roland9 válasza (Felhasználó 120038) hozzászólására (») |
Aug 5, 2016 |
 |
/ |
 |
|
Szia!
Módosítottam, az értéket.
És azt hogy lehetne megoldani, hogy kiírj pc-re? A hozzászólás módosítva: Aug 5, 2016
|
|