Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   213 / 847
(#) Bakman válasza proZac hozzászólására (») Ápr 17, 2016 /
 
A páratartalomhoz mehet non-stop a párásító. Ahol lecsapódik, összegyűjtöd és újra felhasználod, ehhez nem kell semmit mérni/szabályozni.
(#) atus1981 válasza Bakman hozzászólására (») Ápr 17, 2016 /
 
100%-tól nagyobb páratartalmat meg nem lehet elérni, tehát ha megáll a párásító, akkor erősen ingadozhat páratartalom... Folyamatos üzem a megfelelő megoldás
(#) Kera_Will válasza proZac hozzászólására (») Ápr 17, 2016 /
 
Esetleg után tölteni mert valami ultrahangos párásítót emlegetsz.
Ha nem sikerül jól visszaterelni a lecsapódó párát akkor időnként után kell tölteni.
Lehet a párásító pedig nem szeret üresen menni nincs közeg ami hűtené.
Erre pedig nem árt valamilyen folyadékszint figyelőt / riasztót beépíteni.
De ha megoldható akkor egy külső nagyobb tartályból belecsorgatni amennyit kell.
Ezt is vezérelni kell.
(#) Bakancsok hozzászólása Ápr 18, 2016 /
 
Sziasztok!

Nem nagyon találtam erre vonatkozólag információt, ezért inkább kérdezek.

Van pl 8 db analog láb amit szeretnék minél gyorsabban lekérdezni, ha lehetséges lenne még egyszerre is.

Nyilván ez nem lehetséges, de az megtudom-e csinálni hogy 8 db pl. Arduino Nano val lekérdezem az értékeket egyesével és egyszerre, majd ezeket az adatokat 1 panelra átvezetem majd onnan küldeném számítógépre?

És ha igen hogyan?
(#) Bakancsok hozzászólása Ápr 18, 2016 1 /
 
(#) Balázs válasza Bakancsok hozzászólására (») Ápr 18, 2016 /
 
Megoldható, csak - ha valóban egyszerre kell a 8 adat - az egyes elosztott feldolgozóegységek közti szinkronizációt kell megoldani. Ha nagy a térbeli távolság a mérendő mennyiségek között, és egy-egy Nanot mint szenzor node-ot használsz, akkor oké, de egyébként azért egy komplett Arduinót egy egycsatornás ADC-nek használni elég nagy luxus. Én nem így csinálnám, hanem egy dedikált többcsatornás, gyors ADC chipet használnék. Elegánsabb, gyorsabb, valószínűleg olcsóbb is.
(#) RoliNyh válasza Bakancsok hozzászólására (») Ápr 18, 2016 /
 
IE nem képes betölteni a rajzot (néha ki is fagy szépen), csak a folyamatjelző pöttyöket...
A Nighty már betölti, de nagyon lassan...
A hozzászólás módosítva: Ápr 18, 2016
(#) jeges válasza proZac hozzászólására (») Ápr 18, 2016 /
 
DHT22 mintapélda..

  1. #include "DHT.h"
  2.  
  3. #define DHTPIN 2     // what digital pin we're connected to
  4.  
  5. // Uncomment whatever type you're using!
  6. //#define DHTTYPE DHT11   // DHT 11
  7. #define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
  8. //#define DHTTYPE DHT21   // DHT 21 (AM2301)
  9.  
  10. // Connect pin 1 (on the left) of the sensor to +5V
  11. // NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
  12. // to 3.3V instead of 5V!
  13. // Connect pin 2 of the sensor to whatever your DHTPIN is
  14. // Connect pin 4 (on the right) of the sensor to GROUND
  15. // Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
  16.  
  17. // Initialize DHT sensor.
  18. // Note that older versions of this library took an optional third parameter to
  19. // tweak the timings for faster processors.  This parameter is no longer needed
  20. // as the current DHT reading algorithm adjusts itself to work on faster procs.
  21. DHT dht(DHTPIN, DHTTYPE);
  22.  
  23. void setup() {
  24.   Serial.begin(9600);
  25.   Serial.println("DHTxx test!");
  26.  
  27.   dht.begin();
  28. }
  29.  
  30. void loop() {
  31.   // Wait a few seconds between measurements.
  32.   delay(2000);
  33.  
  34.   // Reading temperature or humidity takes about 250 milliseconds!
  35.   // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  36.   float h = dht.readHumidity();
  37.   // Read temperature as Celsius (the default)
  38.   float t = dht.readTemperature();
  39.   // Read temperature as Fahrenheit (isFahrenheit = true)
  40.   float f = dht.readTemperature(true);
  41.  
  42.   // Check if any reads failed and exit early (to try again).
  43.   if (isnan(h) || isnan(t) || isnan(f)) {
  44.     Serial.println("Failed to read from DHT sensor!");
  45.     return;
  46.   }
  47.  
  48.   // Compute heat index in Fahrenheit (the default)
  49.   float hif = dht.computeHeatIndex(f, h);
  50.   // Compute heat index in Celsius (isFahreheit = false)
  51.   float hic = dht.computeHeatIndex(t, h, false);
  52.  
  53.   Serial.print("Humidity: ");
  54.   Serial.print(h);
  55.   Serial.print(" %\t");
  56.   Serial.print("Temperature: ");
  57.   Serial.print(t);
  58.   Serial.print(" *C ");
  59.   Serial.print(f);
  60.   Serial.print(" *F\t");
  61.   Serial.print("Heat index: ");
  62.   Serial.print(hic);
  63.   Serial.print(" *C ");
  64.   Serial.print(hif);
  65.   Serial.println(" *F");
  66. }
(#) Bakman válasza RoliNyh hozzászólására (») Ápr 18, 2016 /
 
Firefox is dob egy hátast az oldaltól, gratulálok a fejlesztőknek.
(#) Brian88 válasza Balázs hozzászólására (») Ápr 18, 2016 /
 
Érdekes mérés
Sok kérdés felmerül, menyire kell gyorsan mérni? Felbontás? Ha nem arduino IDE-be hanem C-ben írod az ADC konverziót kb 10-12 órajel alatt vagyis ~1uSec alatt végezz 1 csatornával a nano. Így 8 csatorna csak 8uSec. Ha elég 8 bites felbontás használhatsz ATtiny13 ami már tud 24MHZ ketyegni így az kb 0,5uSec alatt végez egy csatornán, de csak 8bites az ADC-je. Külső triggerel lehet őket szinkronizálni. Árban több IC sem drága, a Tiny kb 50-100Ft lehet, de a nano sem több 500Ft kínai barátaiknál.
(#) vargaf válasza Brian88 hozzászólására (») Ápr 18, 2016 /
 
Idézet:
„a Tiny kb 50-100Ft lehet”

ATTINY13-20PU
642 Ft
ATTINY13 A "barátainknál"
273 Ft
A hozzászólás módosítva: Ápr 18, 2016
(#) Balázs válasza Brian88 hozzászólására (») Ápr 18, 2016 / 1
 
Szerintem ezt Bakancsoknak akartad címezni.
Azzal egyébként nem értek egyet, hogy ha 1us egy konverzió, akkor 8 csatorna 8us. Illik egy kicsit várni csatornaváltás után, amíg a bemeneti multiplexer átkapcsolási tranziense lecseng.
(#) roland9 hozzászólása Ápr 19, 2016 /
 
Sziasztok!
Egy olyan gondom lenne, hogy PWM jelről szeretnék működtetni 1db rc servo motort.
Ehhez szeretnék segítséget kérni.
(#) Balázs válasza roland9 hozzászólására (») Ápr 19, 2016 /
 
Van hozzá library: Bővebben: Link.
(#) Brian88 válasza vargaf hozzászólására (») Ápr 19, 2016 /
 
Szia
Rossz helyen nézted, Tiny13
Mai árfolyamon 80Ft/db
(#) roland9 válasza Balázs hozzászólására (») Ápr 20, 2016 /
 
Köszi
Még nagyon az alapoknál tartok a programozás terén, tudnál esetleg segíteni, hogy kezdjek neki?
A hozzászólás módosítva: Ápr 20, 2016
(#) Balázs válasza roland9 hozzászólására (») Ápr 20, 2016 /
 
Itt van egy komplett program, ami oda-vissza mozgatja a szervót: Bővebben: Link
(#) roland9 válasza Balázs hozzászólására (») Ápr 20, 2016 /
 
ez megy is, de hogyan olvassam a pwm-et?
(#) Balázs válasza roland9 hozzászólására (») Ápr 20, 2016 /
 
Ezt a kérdést nem értem. Mit szeretnél csinálni pontosan?
(#) roland9 válasza Balázs hozzászólására (») Ápr 20, 2016 /
 
lenne egy dimmer kivezetésem amin ugye pwm jel van, na most ezzel a pwm jellel kellene működtetni egy rc servo-t, ahogy nő a fényerősség úgy menne a servo is a végállás felé illetve ugyanez visszafelé.
(#) kameleon2 válasza roland9 hozzászólására (») Ápr 20, 2016 /
 
Mivel vezérled a dimmert? Nyomógomb, 0-10V, DMX?
(#) roland9 válasza kameleon2 hozzászólására (») Ápr 20, 2016 /
 
dmx512-el megy 0-5V
A hozzászólás módosítva: Ápr 20, 2016
(#) kameleon2 válasza roland9 hozzászólására (») Ápr 20, 2016 /
 
Ezért kérdeztem. Akkor semmi szükség a pwm számolgatására, hiszen a DMX parancselvű. Azaz ami kimegy a dimmerre - ugyanannak kell mennie a motorra. A DMX-en használhatsz két párhuzamos címet is.
(#) kameleon2 válasza roland9 hozzászólására (») Ápr 20, 2016 /
 
Magyarul, ha például a fényerőszabályzó dimmered a 3-as címen van, a motorod is külön kaphat 3-as címet. Igaz két dekódered van de az RS 485 chip filléres. Ha pedig mikrokontroller működteti a dimmert, akkor biztosan van annyi lába, amin a motor is meghajtható párhuzamosan - akkor megint nem a pwm számolgatása a megoldás és elég egy cím.
A hozzászólás módosítva: Ápr 20, 2016
(#) roland9 válasza kameleon2 hozzászólására (») Ápr 20, 2016 /
 
A történet ott kezdődik hogy meg építettem ezt a kapcsolást: Bővebben: Link a ond az vele hogy nekem nem kell RGB ledeket vezérelnem hanem csak egy ledet kell viszont kellene 4db servo a kapcsolásban 4db servo is kivitelezhető de akkor a strobi funkció nem működik, ezért arra gondoltam, hogy a az RGB egyik csatornáját át alakítanám egy AVR-el és nem led-et hanem rc servot működtetnék róla. Ezért kellene, hogy pwm-ről menjen a servo motor.
(#) roland9 válasza kameleon2 hozzászólására (») Ápr 20, 2016 /
 
A gond azzal van, hogy nincs meg a forráskód hozzá én meg elég kezdő vagyok egy ilyet megírni.
(#) eadx hozzászólása Ápr 21, 2016 /
 
Üdv!
Az alábbi programhoz kellene egy kis segítség. 2-2 végálláskapcsoló közt kellene mozgatni oda vissza a dc motort. Az első dc motor oda-vissza után x mp várjon ez indítsa be a második motort.Amikor a második motor is oda vissza ment akkor indulhat ismét az első motor.


int sw1, sw2, sw3,sw4;
const int LM1 =2;
const int LM2 = 3;
const int LM3 = 4;
const int LM4 = 5;
const int LM1_2 = 6;
const int CW1 = 8;
const int CCW1 = 9;
const int CW2 = 10;
const int CCW2 = 11;

void setup() {
pinMode(LM1, INPUT);
pinMode(LM2, INPUT);
pinMode(LM3, INPUT);
pinMode(LM4, INPUT);
pinMode(LM1_2, INPUT);
pinMode(CW1, OUTPUT);
pinMode(CCW1, OUTPUT);
pinMode(CW2, OUTPUT);
pinMode(CCW2, OUTPUT);
}
void loop()
{
static enum {MOVING_CW1, MOVING_CCW1, MOVING_CW2, MOVING_CCW2} state;

switch (state)
{
case MOVING_CW1:
if (digitalRead(LM2) == LOW)
{ // hit switch
digitalWrite(CW1, LOW); // stop
delay(300);
digitalWrite(CCW1, HIGH); // restart
state = MOVING_CCW1;
}
case MOVING_CCW1:
if((digitalRead(LM1) == LOW) and (digitalRead(LM4) == LOW))
{ // hit switch (digitalRead(LM12) == LOW)
digitalWrite(CCW1, LOW);
digitalWrite(CW2, HIGH);
delay(3000);
digitalWrite(CW1, HIGH); // restart

state = MOVING_CW1;

}

{
case MOVING_CW2:
if (digitalRead(LM3) == LOW)
{ // hit switch
digitalWrite(CW2, LOW); // stop
delay(10);
digitalWrite(CCW2, HIGH); // restart
state = MOVING_CCW2;
}
{
case MOVING_CCW2:
if(digitalRead(LM4) == LOW)
{
digitalWrite(CCW2, LOW);
delay(500);
digitalWrite(CW2, HIGH); // restart
state = MOVING_CW2;
}
}
}
}
}

Mi hiányzik még a kódból?
Előre is kösz a segítséget.
(#) GPeti1977 válasza roland9 hozzászólására (») Ápr 21, 2016 /
 
Vegyél digitális szervót az megy az arduino 480Hz pwm jeléről. A bemenetére kell 1k ohm ellenállás sorba.
(#) roland9 válasza GPeti1977 hozzászólására (») Ápr 21, 2016 /
 
Köszi
(#) Kera_Will válasza eadx hozzászólására (») Ápr 21, 2016 /
 
Ha egy sima mechanikus mikrokapcsolókat használsz az arduinó bemenetére kötve sok/kevés méter
vezetékkel összekötve akkor több fizikai kiviteli problémára kellene figyelni.
1. Hosszú drótok antennák lesznek , így össze szedik a különböző elektromos impulzusok jeleit.
(motorok állnak le indulnak el, vannak zavar jelek bőven)
2.A mechanikus kapcsolóknak vannak úgy nevezett prell jelenségeik amik meg zavarhatják a szoftver működését.
Prell : rugalmas kontaktusok találkozásakor több zárás/nyitás periódus zajlik le a nyugalmi állapotba kerülésig (10-20-50 milisec mechanikai kiviteltől függően). Ezt a uC-en futó programod ennyiszer érzékeli is.Ezáltal teljesen más hova léphet a feltételek vizsgálat alapján mint ahova szeretnéd.

1. A hosszú vezetékeken fellépő hamis jelek zaját pedig optocsatolók, zavarszűrő kondenzátorok soros fojtótekercsek , használatával lehet orvosolni. A DC motorokkal párhuzamos kondenzátorokkal és a motor vezetékeibe kötött soros fojtókkal.

2. A prell jelenségét szoftveresen vagy hardveresen kell kezelni.

Légyszíves a KÓD gombot használni legközelebb !
(alul vannak karakter formázó lehetőségek és akkor sokkal jobban / olvashatóban fog kinézni a bejegyzésed és a forrás kódod is).
A hozzászólás módosítva: Ápr 21, 2016
Következő: »»   213 / 847
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem