Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
O smecherie pe care nu o inteleg

Balcon parter fara acte

unde gasesc un speed bag in bucur...

Programe TV cu altfel de sporturi
 Laptop "bun la toate" max...

navigatie noua vw tiguan

ctfmon.exe - System Error (in Saf...

Ați prins vremurile cand 120 Volț...
 Whatsapp nu afișeaza numele ...

Medii admitere Politehnica Bucure...

Se extinde Baza de la Kogalniceanu

Politist mutilat de caine in curt...
 Trotineta- cat rezista?

Windows 11 si inregistrare de pe ...

Cont Facebook spart

Accesare Plex prin webstation
 

automatizare temporizare cu 2 x 555 sau?

- - - - -
  • Please log in to reply
26 replies to this topic

#1
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006
Salutare tuturor!


Doresc o automatizare cu un monostabil cu durata de aclansare de 120 secunde  care sa permita aclansarea unui al doilea astabil cu urmatorii timpi:

1.      5 aclansari cu durata de 16 secunde si pauza intre ele de 10 secunde

2.      3 aclansari cu durata de 32 de secunde si pauza dintre ele de 12 secunde

3.    15 aclansari cu durata de 4 secunde si pauza dintre ele de 4 secunde

4.     1 aclansare cu durata de 120 secunde.


Ma poate ajuta cineva cu modul de cuplaj intre monostabil si astabil?


Sau o varianta cu PIC sau Atmel?


Multumesc anticipat.

#2
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
N-am înţeles exact, sunt mai multe cazuri diferite sau toate astabilele funcţionează deodată în paralel?

#3
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006
La actionarea monostabilului acesta va comanda astabilul cu acei timpi si pauze diferite selectabili printr-un comutator. Deci mai intai aleg tipul de tren de impulsuri apoi apasand un buton gen start pornesc monostabilul care va alimenta (comanda astabilul) timp de doua minute, cat dureaza trenul de impulsuri selectat. Daca se observa, indiferent de tipul de tren de impulsuri, durata finala de aclansare plus pauze este de 120 secunde la toate trenurile.

#4
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
Analogic e greu de ajuns la precizia dorită, deşi se pot calcula valorile fără prea mare bătaie de cap.
Problema astabilului cu 555 este că la pornire timpul de încărcare a condensatorului de temporizare e mai ridicat, pt. că se încarcă de la zero apoi oscilează între 1/3 şi 2/3 din tensiunea de alimentare. deci nu se poate folosi în aplicaţia asta. Poate dacă ar funcţiona permanent şi controlezi cu o poartă comandată de monostabil dacă semnalul trece mai departe sau nu, dar nu ai sincronizare în cazul ăsta.
Probabil cel mai simplu ar fi cu un sketch în Arduino, folosind funcţia (millis). Sau realizezi un numărător sau registru de deplasare cu 120 de etaje care primeşte tact la 1s iar ieşirile le cablezi cu diode, dar e cam stufos, e nevoie de multe piese, 12 integrate CD4017 plus zeci de diode.

#5
gabyxm

gabyxm

    Senior Member

  • Grup: Senior Members
  • Posts: 8,214
  • Înscris: 08.06.2004
Cred ca ar fi mai fiabil cu microcontroller daca vrei precizie.
Daca folosesti E555 perioada setata din monostabil nu ai cum sa o sincronizezi perfect cu perioadele din astabil.O sa-ti ramana o direrenta in plus sau minus pe ultimele secunde si o sa ai in cazu asta inca o bucata de perioada a semnalului din astabil sau o trunchiere.
Ar merge facut si cu TTL(monostabil, oscilator, numaratoare si decodificare) da iese destul de stufoasa schema.

@mihai: n-am vz ca ai scris :D

Edited by gabyxm, 27 June 2016 - 10:57.


#6
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006
Cineva m-a ajutat cu o varianta cu attiny dar mi-am prins urechile la partea practica (schema electrica):

/*
Attiny85
*/
#include <avr/io.h>
const int panouPin = A3; // Attiny85: pin 2
const int outputPin = 4; // Attiny85: pin 3
boolean Armare = false;
void setup(){
  pinMode(outputPin,OUTPUT);
  delay(1000);
}
void loop(){
  raid(analogRead(panouPin));
}
void raid(int Button){
int mod_functionare = 0;
  // selectie mod
  if (Button >= 250){mod_functionare=1;}
  if (Button >= 500){mod_functionare=2;}
  if (Button >= 750){mod_functionare=3;}
  if (Button >= 1000){mod_functionare=4;}
  if (mod_functionare < 1) {Armare=false;} //resetare
  if (Armare == true) {return ;}

  switch(mod_functionare){
  case 1: //ALARMA LA DEZASTRE
  for (int i=0; i<5;i++){
digitalWrite(outputPin,HIGH); myDelay((16*1000));
digitalWrite(outputPin,LOW); myDelay((10*1000));
  }
  Armare = true;
  break;

  case 2: //PREALARMA AERIANA
  for (int i=0; i<3;i++){
digitalWrite(outputPin,HIGH); myDelay((32*1000));
digitalWrite(outputPin,LOW); myDelay((12*1000));
  }
  Armare = true;
  break;

  case 3: //ALARMA AERIANA
  for (int i=0; i<15;i++){
digitalWrite(outputPin,HIGH); myDelay((4*1000));
digitalWrite(outputPin,LOW); myDelay((4*1000));
  }
  Armare = true;  
  break;
  case 4: // INCETARE ALARMA
digitalWrite(outputPin,HIGH);
myDelay((120*1000));
digitalWrite(outputPin,LOW);
  Armare = true;  
  break;

  }//end switch

}
void myDelay(int milis){
int flagStop;
for (int i=0; i<milis; i++){
  delay(1);
  flagStop = analogRead(panouPin);
  if (flagStop < 200) {break;}
}
}

#7
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
Păi e e aşa greu? faci un divizor rezistiv cu 3 rezistenţe şi selectezi de pe ele semnalul pt. Tiny, pinul 2, restul e rezolvat, ai ieşirea dorită pe 3.

#8
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006
1. Folosesc butoane pushbutton cu revenire sau cu retinere?
2. Pinul ce citeste valoarea rezistorilor este pinul fizic 3?
3. Pinul de iesire releu este pinul fizic 2?
4. La instructiunea
const int panouPin = A3; // Attiny85: pin 2
const int outputPin = 4; // Attiny85: pin 3

nu trebuia
const int panouPin = A3; // Attiny85: pin 2
const int outputPin = A4; // Attiny85: pin 3 ?

5. Cum calculez valorile rezistorilor? Cu ADC egal cu Vin*1024/Vref?


Va rog, un desen, daca se poate.

#9
barbu78

barbu78

    Guru Member

  • Grup: Senior Members
  • Posts: 13,590
  • Înscris: 03.11.2011
Se poate si cu 555 dar, este nevoie de un comutator mai complex.

#10
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
Selector rotativ sau liniar cu 5 poziţii sau butoane gen claviatură, cu intercondiţionare, ca să nu poţi apăsa 2 butoane simultan.
A4 este o intrare analogică, care trece prin ADC, cealaltă este un pin digital de uz general, de aceea nu are A-ul în faţă.
Divizorul trebuie calculat cum ai zis, 1023 e valoarea maximă. De fapt e nevoie de 4 rezistenţe în divizor, valorile aşa ochiometric ar trebui să fie ceva de genul R, R, R, 1,1R, luat de sus în jos. R poate lua valori de genul 10k, de ex, eci ai avea 10k, 10k, 10k, 11k.

Edited by mihaicozac, 27 June 2016 - 11:40.


#11
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006

 mihaicozac, on 27 iunie 2016 - 11:14, said:

Selector rotativ sau liniar cu 5 poziţii sau butoane gen claviatură, cu intercondiţionare, ca să nu poţi apăsa 2 butoane simultan.
A4 este o intrare analogică, care trece prin ADC, cealaltă este un pin digital de uz general, de aceea nu are A-ul în faţă.
Divizorul trebuie calculat cum ai zis, 1023 e valoarea maximă. De fapt e nevoie de 4 rezistenţe în divizor, valorile aşa ochiometric ar trebui să fie ceva de genul R, R, R, 1,1R, luat de sus în jos. R poate lua valori de genul 10k, de ex, eci ai avea 10k, 10k, 10k, 11k.



Still i don't get it.

Se poate o schema (ma refer la aplicatia cu Attiny)?

#12
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
Ceva de genul:

Attached Files



#13
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006

 mihaicozac, on 27 iunie 2016 - 12:03, said:

Ceva de genul:

Adica asa?

Attached Files


Edited by tiritrobo, 27 June 2016 - 13:13.


#14
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
Aproximativ corect, doar că tranzistorul de ieşire ar trebui conectat cu emitorul direct la masă, iar releul legat în colector, astfel poţi folosi altă tensiune pt. releu, de ex. 12V.

Edited by mihaicozac, 27 June 2016 - 13:20.


#15
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006

 mihaicozac, on 27 iunie 2016 - 13:20, said:

Aproximativ corect, doar că tranzistorul de ieşire ar trebui conectat cu emitorul direct la masă, iar releul legat în colector, astfel poţi folosi altă tensiune pt. releu, de ex. 12V.


Da, fireste, o sa pun un BC107 sau ceva similar cu dioda antiparalela pe bobina releului si sper sa mai si mearga. Cum fac protectia EPM? In caz de trasnete sau alte alea?

|I

#16
mihaicozac

mihaicozac

    Guru Member

  • Grup: Senior Members
  • Posts: 15,532
  • Înscris: 05.12.2005
Transil, tvs, etc. Teoretic montajul e separat de circuitele exterioare, dar o protecţie în plus nu strică. De aceea şi integratul ar trebui montat pe soclu, dacă se distruge programezi repede altul şi îl înlocuieşti.

#17
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006
Multumesc frumos pentru tot!


Va tin la curent cu progresul lucrarii.

#18
tiritrobo

tiritrobo

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 11.09.2006
Am incarcat hex-ul aferent schitei in Attiny85 cu Khazama AVR, deoarece eXtreme AVR burner nu suporta Attiny85 prin interfata USBASP si un breadboard. Bine, si Khazama dadea eroarea legata de clock dar am inteles ca nu este importanta. Am verificat flash0ul, totul OK. Boon. Cu toate acestea, realizand si montajul fizic al aplicatiei, am constatat ca nu functioneaza. Sa fie fusebits setati gresit?


Am aici si un printscreen al fusebits-ilor de dupa programare.


Unde gresesc?

Attached Files


Edited by tiritrobo, 19 July 2016 - 09:25.


Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate