H-můstek,koncové spínače
-
- Příspěvky: 3
- Registrován: 31 led 2021, 14:10
- Reputation: 0
H-můstek,koncové spínače
Zdravím mám dotaz,
Jde o to že chci zavírat a otevírat dvířka kurníku pomoci H-můstku v určitém čase ,ale mám problém s tím že pokud dvířka dojedou na koncák tak koncák zůstane sepnutý,jakmile program dá pokym aby se dvířka pohnuly opačným směrem tak je koncák ihned vypne protože je (sepnutý),
prosím o radu jak nastavit v programu ty koncáky aby 1. koncák platil jen pro část programu ?
program zde:
if(t.hour == 12 && t.min == 00 && t.sec == 2) //otevirání
{
digitalWrite(motor1pin1, HIGH); //motor1 pin HIGH
digitalWrite(motor1pin2, LOW);
}
if(digitalRead(switchPin1) ==LOW)
{
digitalWrite(motor1pin1, LOW); //motor1 pin HIGH
digitalWrite(motor1pin2, LOW);
}
if(t.hour == 12 && t.min == 00 && t.sec == 10) //otevirání
{
digitalWrite(motor1pin1, LOW); //motor1 pin HIGH
digitalWrite(motor1pin2, HIGH);
}
if(digitalRead(switchPin2) ==LOW)
{
digitalWrite(motor1pin1, LOW); //motor1 pin HIGH
digitalWrite(motor1pin2, LOW);
}
delay (1000);
}
Jde o to že chci zavírat a otevírat dvířka kurníku pomoci H-můstku v určitém čase ,ale mám problém s tím že pokud dvířka dojedou na koncák tak koncák zůstane sepnutý,jakmile program dá pokym aby se dvířka pohnuly opačným směrem tak je koncák ihned vypne protože je (sepnutý),
prosím o radu jak nastavit v programu ty koncáky aby 1. koncák platil jen pro část programu ?
program zde:
if(t.hour == 12 && t.min == 00 && t.sec == 2) //otevirání
{
digitalWrite(motor1pin1, HIGH); //motor1 pin HIGH
digitalWrite(motor1pin2, LOW);
}
if(digitalRead(switchPin1) ==LOW)
{
digitalWrite(motor1pin1, LOW); //motor1 pin HIGH
digitalWrite(motor1pin2, LOW);
}
if(t.hour == 12 && t.min == 00 && t.sec == 10) //otevirání
{
digitalWrite(motor1pin1, LOW); //motor1 pin HIGH
digitalWrite(motor1pin2, HIGH);
}
if(digitalRead(switchPin2) ==LOW)
{
digitalWrite(motor1pin1, LOW); //motor1 pin HIGH
digitalWrite(motor1pin2, LOW);
}
delay (1000);
}
Re: H-můstek,koncové spínače
Z dotazu není jasné, jestli koncové spínače fyzicky zasahují do napájení motoru nebo jen informují program, že má vypnout napájení.
Obecně je vhodné přečíst stav koncáku, uložit tuto informaci do pomocné proměnné a tu si pak podle potřeby nastavovat bez ohledu na fyzický stav koncového spínače. I když pro průběh zavírání je stav konc. spínače č.1 irelevantní.
Obecně je vhodné přečíst stav koncáku, uložit tuto informaci do pomocné proměnné a tu si pak podle potřeby nastavovat bez ohledu na fyzický stav koncového spínače. I když pro průběh zavírání je stav konc. spínače č.1 irelevantní.
-
- Příspěvky: 3
- Registrován: 31 led 2021, 14:10
- Reputation: 0
Re: H-můstek,koncové spínače
koncové spínače pouze informují program I/0 ,tzn. že samotné arduino dáví pokyn H-můstku aby se otáčel motor,
nemáte nějaký přiklad jak to uložit do pomocné proměnné (jsem začátečník abych se měl od čeho inspirovat).
nemáte nějaký přiklad jak to uložit do pomocné proměnné (jsem začátečník abych se měl od čeho inspirovat).
Re: H-můstek,koncové spínače
Jak to, že se motor nerozeběhne na zavírání, když se stav koncáku 1 testuje jen při otevírání?
Nebo běží celý program pro oba dva směry pohybu stejně?
Nebo běží celý program pro oba dva směry pohybu stejně?
-
- Příspěvky: 3
- Registrován: 31 led 2021, 14:10
- Reputation: 0
Re: H-můstek,koncové spínače
ano celý program běži pro oba dva směry pohybu stejně ,tzn. že platí pro celý program 1. a zároven 2. koncák oba dva mužou vypnout pohyb motoru .
Re: H-můstek,koncové spínače
Problém asi bude v testování času. Zdá se, že podmínka pro start zavírání je definována tak precizně, že se málokdy splní, takže program se věnuje pouze zavírání a to je koncákem 1 vyloučeno.
Rozumnější by bylo stanovit časovou podmínku na čas je větší než... anebo podle aktuálního stavu koncáků se rozhodnout, jestli se bude otevírat nebo zavírat.
Rozumnější by bylo stanovit časovou podmínku na čas je větší než... anebo podle aktuálního stavu koncáků se rozhodnout, jestli se bude otevírat nebo zavírat.
Re: H-můstek,koncové spínače
Ještě malý dodatek.
Kurník se tu už několikrát řešil a dá se najít v hotových projektech vyhledáním textu "dvierka kurína".
Kurník se tu už několikrát řešil a dá se najít v hotových projektech vyhledáním textu "dvierka kurína".
Re: H-můstek,koncové spínače
mál by si nakresliť ako to máš riešené
ten kód máš 2x otváranie a nie otváranie ráno a zatváranie večer a máš tam rovnaké testovanie konc.spínača s prehodením smerom otáčania, takže preto sa zastaví ihneď
máš mať dva koncové spínače alebo pri otváraní netestovať spínač na kurníku ale len napr. 5s otvárať(čiže kedy sú dvere dosť otvorené, časové otváranie, 90° otvorenie dverí)
ak sa dvere môžu otvoriť až na 150° tak čas môže byť napr. 5-8s čiže netreba meranie prúdu pri zaťaží.
aby sa nepoškodil motor - treba koncový spínač alebo merať spotrebu motora( ak sa zaťaží, tak to znamená, že je na doraz, čiže prúdová ochrana)
mechanický koncový spínač
hallová sonda
IR senzor
prúdový snímač
pozri odkaz dole. Nemusíš testovať konc.stav dverí ale dáš otváranie a zatváranie napr. 10s a motor sa nepreťaží ale vypne ako to vidíš na obrázku na odkaze (aktuátor)
ráno dáš mostík +- polarity a večer -+ polarity pre mostík a potrebný čas otvárania a zatvárania a o ochranu motora sa postará zapojenie so spínačmi a diódami pre aktuátor.
viewtopic.php?f=37&t=2295&p=13418#p13418
ten kód máš 2x otváranie a nie otváranie ráno a zatváranie večer a máš tam rovnaké testovanie konc.spínača s prehodením smerom otáčania, takže preto sa zastaví ihneď
máš mať dva koncové spínače alebo pri otváraní netestovať spínač na kurníku ale len napr. 5s otvárať(čiže kedy sú dvere dosť otvorené, časové otváranie, 90° otvorenie dverí)
ak sa dvere môžu otvoriť až na 150° tak čas môže byť napr. 5-8s čiže netreba meranie prúdu pri zaťaží.
aby sa nepoškodil motor - treba koncový spínač alebo merať spotrebu motora( ak sa zaťaží, tak to znamená, že je na doraz, čiže prúdová ochrana)
mechanický koncový spínač
hallová sonda
IR senzor
prúdový snímač
pozri odkaz dole. Nemusíš testovať konc.stav dverí ale dáš otváranie a zatváranie napr. 10s a motor sa nepreťaží ale vypne ako to vidíš na obrázku na odkaze (aktuátor)
ráno dáš mostík +- polarity a večer -+ polarity pre mostík a potrebný čas otvárania a zatvárania a o ochranu motora sa postará zapojenie so spínačmi a diódami pre aktuátor.
viewtopic.php?f=37&t=2295&p=13418#p13418
Re: H-můstek,koncové spínače
Se snažíš stvořit asi něco takového ... mi příjde ... budeš si to muset ale doupravit dle svých potřeb.
Kód: Vybrat vše
if(jeCasMitOtevreno == true) { // je potřeba mít otevřené dvířka
if(jedenKoncak == HIGH) { // ještě to nenabouralo do koncáku
// toč motorem ve směru otevření
} else { // nabouralo to do koncáku1
// zastav motor
}
} else { // dvere je potreba mit zavrene
if(druhyKoncak == HIGH) { // ještě to nenabouralo do koncáku
// toč motorem ve směru zavření
} else { // nabouralo to do koncáku2
// zastav motor
}
}
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 10 hostů