• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Czy to prosty projekt?
#1
Witam, moja wiedza na temat programowania jest bardzo ograniczona, a arduino jeszcze nigdy nie programowałem, ale chciałbym za jego pomocą wykonać pewien projekt i nie wiem czy nie jest to porywanie się z motyką na słońce. 

Projekt jest następujący: Na podstawie średniej temperatury podawanej przez dwa czujniki, arduino ma kontrolować szybkość pompowania cieczy przez 18W 12V pompkę prądu stałego i prędkość obrotową czterech 12V wentylatorów (ok. 0,2 A na szt.). Całość ma być jeszcze w celach zabezpieczających kontrolowana przez czujnik przepływu, jedyny przepływomierz jaki znalazłem podaje częstotliwość którą następnie pomnożona przez współczynnik podaje przepływ (nie wiem czy jest to jakieś utrudnienie w programowaniu). Jakby jeszcze udało się odczytywać i pokazywać na bieżąco temperaturę na ekranie komputera lub na jakimś małym wyświetlaczu to już w ogóle byłoby świetnie. 

Powiedźcie mi czy zaprogramowanie takiego czegoś jest w miarę proste korzystając z różnych tutoriali dostępnych w internecie czy najpierw będę musiał uczyć się kilka tygodni żeby ruszyć?   Wink
 
Odpowiedź
#2
nie jest to trudne ale przy czujniku przepływu możne być trochę zabawy ja ci radze zacznij od obsługi czujników 1 potem 2 z kolei obsługa liquidcristal i dopiero to scal w program
 
Odpowiedź
#3
Problemu żadnego tak naprawdę nie ma a nawet wydaje mi się że było by to dość proste do zrealizowania.

Jeśli chodzi o czujniki przepływu są dostępne różne nie tylko takie co jako wartość wyjściową dają częstotliwość, są też takie które dają określoną liczbę impulsów na litr. 

Przykład 

http://electropark.pl/przeplywu/6023-prz...l-min.html

taki znalazłem wpisując w wujka google: przepływomierz arduino

myślę że można znaleźć więcej i w bardziej przyzwoitej cenie.

Jeśli chodzi o sterowanie urządzeniami / odbiornikami które potrzebują większego prądu to polecam tranzystory MOSFET typu IRL które działają już od 0 - 5V i potrafią sterować dużymi prądami.

reszta to czyste programowanie z którym też nie powinno być większego problemu.

kończąc tego posta podpowiem tylko z własnego doświadczenia:

zanim kupisz części sprawdź jak łatwo będzie je zaimplementować do Twojego programu / urządzenia
 
Odpowiedź
#4
o trzywiscie można zmienić komponentów wejścia ale nie można założyć ze sie nie da zrobić na tym co jest pod ręka to ze ma częstotliwość nie ma problemu tylko więcej pisania i tu jest zabawa a autor możne ma taki pod ręka i taki chce wykorzysta ogólnie program jest prosty obsługa lcd czy nawet Ethernet i na nim wartości wyrzucona w przeglądarce tez nie ma trudności

"zanim kupisz części sprawdź jak łatwo będzie je zaimplementować do Twojego programu / urządzenia "- bardzo mądre słowa chyba ze coś jest i chcemy wykozystac ale mimo wszystko warto się zastanowić czy komponent kosztuje 30zł i 2 min obsługi czy nasz i 2 godziny obsługi co opłaci się bardzie
 
Odpowiedź
#5
Dziękuje za pokrzepiające odpowiedzi. Piszę po takim czasie bo dopiero teraz poskładałem już prawie wszystko do kupy i od razu pojawiły się problemy  Sad

Obydwa obejmują  wyjścia PWM które podłączyłem według poradnika który znalazłem w sieci:
[Obrazek: pwmex_mosfet.png]
Różnica jest tylko taka że zamiast GND i Vin podłączyłem zewnętrzny zasilacz.

Rezystory mają po 1 KOhm, a tranzystory to IRF540N.

Pierwszy problem pojawia się z pompką 4,8W 12V DC działa ona tylko jeśli wypełnienie ustawię na 255, zaczyna ona wtedy pracować z pełną mocą, wystarczy zmiana na 254 i już nie działa.

Drugi problem mam z dwoma wentylatorami 12 VDC 0,16A, na poziomie wypełnienia poniżej 200 straszenie piszczą, jeden piszczy bardziej i startuje on od większego wypełniania (pierwszy od ok 70, drugi od ok 100).

Do sprawdzania co i jak działa stworzyłem taki prosty programik gdzie ręcznie wprowadzam wartości wypełnienia.

Kod:
#define PWM_PIN 3 // pompka
#define PWM_PIN 5 // wentylator 1
#define PWM_PIN 6 // wentylator 2

void setup()
{
 pinMode(3 , OUTPUT);
 pinMode(5 , OUTPUT);
 pinMode(6 , OUTPUT);

 analogWrite(3 ,0);
 analogWrite(5 ,0);
 analogWrite(6 ,0);
 
}

void loop()
{
}


Proszę o pomoc  Smile
 
Odpowiedź
#6
Witam

Tutaj troszkę wyjaśniam dlaczego nie działa

http://forum.arduinopolska.com/watek-wen...zy-pwm-100

po 2- gie 33A tranzystor do 0.5A wentka to tak nie za bardzo zwłaszcza że startuje dosyć wysoko chyba od 10v na bramce ale tu odsyłam do dokumentacji .

żeby nie piszczało dołóż przed wentkiem kondensator 100-200uF

P.s. sprawdziłem na BD139 działa i rusza dopiero ok pwm 140 i działa rozkręcony do 75 czyli wszystko o.k. Dzieje się to dlatego że wprawienie w ruch wymaga większej energi niż utrzymanie obiektu w ruchu  tutaj proszę zajrzeć do podręczników fizyki (  chyba gimnazjum ja miałem w podstawówce )

poniżej masz kod który na 0,1 s puszcza pełną moc na wentka , ty tego nie zauważysz ale wystarczy do ruszenia go z miejsca

Kod:
const int analogInPin = A0;  // Analog input pin that the potentiometer is attached to
const int analogOutPin = 9; // Analog output pin that the LED is attached to

int sensorValue = 0;        // value read from the pot
int outputValue = 0;        // value output to the PWM (analog out)

int stat = LOW;

void setup() {
  
  Serial.begin(9600);
}

void loop() {

  sensorValue = analogRead(analogInPin);
  outputValue = map(sensorValue, 0, 1023, 0, 255);
  
if ( outputValue >= 75 and stat == LOW ){

    outputValue = 255;
    
    analogWrite(analogOutPin, outputValue);
    delay(100);
    stat = HIGH ;
}

if (  outputValue < 75  )stat = LOW;
  
  analogWrite(analogOutPin, outputValue);

  Serial.print("sensor = " );
  Serial.print(sensorValue);
  Serial.print("\t output = ");
  Serial.println(outputValue);
  
  delay(2);
}
Ważne aby robić co się lubi albo lubić co się robi .
Arduino UNO, TINY, PRO MINI
Pomoc nagradzamy punktami reputacji Wink
 
Odpowiedź
#7
Dzięki za radę, zacząłem od najprostszego czyli zamontowania kondensatorów 100 uF i wentylatory zaczęły startować poniżej 40 i przestały piszczeć, niżej nawet nie próbowałem bo ich niższa prędkość nie jest mi potrzebna.

Pompka po zamontowaniu takiego samego kondensatora, zaczęła startować od 40 co uważam za pełny sukces  Big Grin

Pompka niestety generuje hałas ok 70 dB a powinna poniżej 35 dB jednak mój układ hydrauliczny nie jest ukończony i uruchamiam ją tylko dosłownie na kilka sekund na sucho, żeby sprawdzić czy w ogóle działa, mam tylko nadzieje, że hałas ustąpi po napełnieniu układu cieczą  Smile  

Niedługo na pewno potrzebna mi będzie kolejna pomoc w programowaniu tylko muszę złożyć wszystko do końca  Smile
 
Odpowiedź
#8
Pompka na sucho będzie tak terkotała . Wink
Ważne aby robić co się lubi albo lubić co się robi .
Arduino UNO, TINY, PRO MINI
Pomoc nagradzamy punktami reputacji Wink
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości