Index |
Index forum |
Autentificare |
Inregistrare
|
Cine este online |
Galerie imagini
|
Calendar evenim. |
Cautare detaliata |
Ghid forum |
Colaboratori
Te intereseaza un domeniu al astronomiei si ai vrea sa scrii pentru siteul nostru? Alatura-te echipei noastre.
Statistici forum |
|
Numar total de mesaje in forum: 224519 |
|
Numar de utilizatori inregistrati: 2834 |
|
Cel mai nou utilizator inregistrat: Dorin |
|
|
|
Cei mai multi utilizatori conectati au fost 543 la data de Vin Mar 29, 2024 |
|
|
|
Actualmente sunt 0 utilizatori pe chat
|
|
Aceste date se bazeaza pe utilizatorii activi de peste 5 minute |
|
Legenda |
|
Mesaje noi |
|
Nu sunt mesaje noi |
|
Forumul este inchis |
|
|
Subiectul anterior :: Subiectul urmator |
|
Autor |
Mesaj |
iulian90 Membru
Data inscrierii: 13 Sep 2016 Mesaje: 2399
Localitate: Braila
|
Trimis: 02 Dec 2020 21:54 Download mesaj |
Titlul subiectului: |
|
|
|
Interesant topicul despre codurile Arduino, este foarte util pentru incepatori.
Eu , ca sa invat cu se foloseste un microcontroler Arduino, am vizionat o serie de topicuri pe Youtube, prezentate de dl. Paul McWhorter:
https://www.youtube.com/watch?v=fJWR7dBuc18
in care explica detaliat fiecare lucru despre Arduino, despre coduri, ce reprezinta , despre cum trebuie scrise si multe altele. Sunt mai multe parti, mai multe episoade ale topicului despre utilizarea Arduino. _________________ Reflector Gigant 245/1286mm
Reflector Seben 150/1400mm
Reflector Atlas Explorer 114/900mm
Reflector Optus 76/700mm
Luneta 80/900mm
Binoclu Bresser Superfocus 10x50 |
|
Sus |
|
|
Erwin Moderator
Data inscrierii: 02 Aug 2008 Mesaje: 9476
Motto: panta rhei Localitate: Bucuresti
|
Trimis: 03 Dec 2020 08:48 Download mesaj |
Titlul subiectului: |
|
|
|
Pentru soluții practice și exemple din care se poate învăța utilizarea feluritelor module atașabile la Arduino puteți consulta site-ul lui Nicu Florică, un electronist pasionat:
https://www.arduinotehniq.com/ _________________ bino: 8x22, 7x42, 10x50, 10x80, spotting: 10x46, 20x60
Telescoape RFT70 F/4, 80/900, RFT 110 F/5.5, Meade 90 F/10, ED80 F/6
MTO-11CA 100/1000, Cass Clasic 8"F/15, dobson newt.158/1240 DH, 4"F/4.6
piston AZ mount (R), Vixen GP, minidob |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 03 Dec 2020 11:16 Download mesaj |
Titlul subiectului: |
|
|
|
Am sa continui micul serial cu cateva comenzi noi.
analogRead()
- pe placile Arduino avem un numar de pini asa numiti analogici, de fapt niste convertoare analog-digitale cu rezolutie de 10 biti. Cu alte cuvinte semnalul analogic de la 0 la 5V va fi convertit in semnal digital pe 10 biti (1024 de nivele). In acest fel rezolutia de conversie e de 4.9 mV. Cu comanda analogRead(), de pe un pin analogic, arduino va converti valoarea tensiunii de intrare (intre 0 si 5V) in semnal digital pe 10 biti. Arduino Zero, Due, MKR Family boards, dispun de convertoare pe 12 biti si o plaja de intrare 0 - 3,3V
analogWrite()
- cu aeasta comanda spunem microcontrolerului sa trimita la un pin PWM (aici avem pini PWM in functie de tipul de arduino - https://www.arduino.cc/reference/en/langua...alogwrite/) ,desemnat ca OUTPUT, un semnal PWM cu factor de umplere dependent de numarul introdus intre paranteze. Numarul poate fi intre 0 si 255, 0 insemnand ca pinul sta tot timpul pe 0 iar 255, pinul sta tot timpul pe 5V. Numerele intermediare produc semnale dreptunghiulare cu factor de umplere tot mai mare pe masura ce ne apropiem de 255. Frecventa semnalului dreptunghiular depinde de tipul de Arduino si pinul folosit si poate fi intre 490Hz si 1000Hz. Puteti gasi frecventele aici : https://www.arduino.cc/reference/en/langua...alogwrite/
Vedem ca nu avem de a face cu cu o iesire analogica reala, dar printr-un grup de rezistente condensatoare putem indulci pantele semnalului dreptunghiular, transformandul intrun semnal pseudo-analogic. Cum teoria spune ca pentru a caracteriza o anumita frecventa avem nevoie de o frecventa de esantionare de cel putin de 2 ori frecventa, la arduino vom avea doar cateva sute de herti la dispozitie.
Exemple sketchuri
1 Citirea valorii tensiunii de la cursorul unui potentiometru. Potentiometrul are legat un capat la 5V, celalat capat la GND si cursorul la pinul A3
int analogPin = A3; // declaram pinul A3 ca variabila analogPin
int val = 0; // declaram variabila val
void setup() {
Serial.begin(9600); // pornim o comunicare seriala
}
void loop() {
val = analogRead(analogPin); // citeste tensiunea de pe analogPin
Serial.println(val); // trimite valoarea val la un port serial
}
2 Reglarea intensitaii luminoase a unui LED cu ajutorul unui potentiometru. Cursorul potentiometrului e legat la pinul 3 si ledul la pinul 9
int ledPin = 9; // declaram pinul 9 ledPin
int analogPin = 3; // declaram pinul 3 analogPin
int val = 0; // declaram variabila val
void setup() {
pinMode(ledPin, OUTPUT); // setam ledPin ca OUTPUT
}
void loop() {
val = analogRead(analogPin); // citeste analogPin si aloca catre val
analogWrite(ledPin, val / 4); // trimite catre ledPin valoarea val impartita la 4 (ca sa se incadreze intre 0 si 255)
}
Avem si aici cateva exemple cu analogWrite : https://www.youtube.com/watch?v=6CRhpUV92ww&t=14s https://www.youtube.com/watch?v=YfV-vYT3yfQ _________________ 0770403936 |
|
Sus |
|
|
Erwin Moderator
Data inscrierii: 02 Aug 2008 Mesaje: 9476
Motto: panta rhei Localitate: Bucuresti
|
Trimis: 03 Dec 2020 16:42 Download mesaj |
Titlul subiectului: |
|
|
|
Atenție, există un singur convertor A/D în chip-ul ATmega ce este comutat automat, în mod transparent pentru utilizator, către pinii respectivi ce pot primi semnal analogic. În unele aplicații care presupun mai mulți senzori simultan va exista un (nuștiucâtde) mic delay între citirile respective. _________________ bino: 8x22, 7x42, 10x50, 10x80, spotting: 10x46, 20x60
Telescoape RFT70 F/4, 80/900, RFT 110 F/5.5, Meade 90 F/10, ED80 F/6
MTO-11CA 100/1000, Cass Clasic 8"F/15, dobson newt.158/1240 DH, 4"F/4.6
piston AZ mount (R), Vixen GP, minidob |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 03 Dec 2020 17:47 Download mesaj |
Titlul subiectului: |
|
|
|
Poate in anumite aplicatii pot sa apara probleme, altfel, la viteza cu care lucreaza arduino (10.000 de citiri pe secunda), nu va fi nici o problema faptul ca citeste pe rand intrarile. _________________ 0770403936 |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 04 Dec 2020 11:46 Download mesaj |
Titlul subiectului: |
|
|
|
Azi vreau sa prezint una dintre cele mai puternice comenzi din bucataria Arduino : #include < >
Aceasta comanda ne ofera accesul la asa zisele library, programe complexe, scrise de utilizatori avansati, care invata arduino sa interactioneze cu diverse periferice, un fel de drivere. Arduino IDE vine cu mai multe library gata incluse si le putem integra in sketchul nostru cu comanda #include < >. Daca avem nevoie de alte library le putem instala dupa procedurile descrise aici : https://www.arduino.cc/en/Guide/Libraries
Odata inclusa library in sketch, arduino va sti cum sa lucreze cu perifericul respectiv, spre exemplu va sti ce comenzi sa dea unui afisor cu cristale lichide,pentru ca acesta sa afiseje ce am scris noi in program. Comanda se pune la inceputul sketchului si intre paranteze trebuie sa trecem numele bibliotecii dorite : #include < >
_________________ 0770403936
Ultima modificare efectuata Remus Boldis la 05 Dec 2020 00:54, modificat de 3 ori in total |
|
Sus |
|
|
Erwin Moderator
Data inscrierii: 02 Aug 2008 Mesaje: 9476
Motto: panta rhei Localitate: Bucuresti
|
Trimis: 05 Dec 2020 00:01 Download mesaj |
Titlul subiectului: |
|
|
|
Nu vreau să fiu moș-contra, dar termenul românesc echivalent pentru englezescul library este bibliotecă. Librăria este altceva, este magazinul unde se vând cărțile.
Din păcate s-a încetățenit, la fel ca multe alte cuvinte din "romgleză"...
Scuze de offtopic, Remus, continuă. _________________ bino: 8x22, 7x42, 10x50, 10x80, spotting: 10x46, 20x60
Telescoape RFT70 F/4, 80/900, RFT 110 F/5.5, Meade 90 F/10, ED80 F/6
MTO-11CA 100/1000, Cass Clasic 8"F/15, dobson newt.158/1240 DH, 4"F/4.6
piston AZ mount (R), Vixen GP, minidob |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 05 Dec 2020 19:34 Download mesaj |
Titlul subiectului: |
|
|
|
!= (nu este egal cu)
< (mai putin ca)
<= (mai putin sau egal cu)
Acestia sunt operatori de comparatie. Arduino va efectua comparatia ceruta si in functie de rezultat va efectua comezile scrise intre acolade.
if (x == y) { // testeaza daca x este egal cu y
} // daca comparatia este adevarata fa ce e scris intre acolade _________________ 0770403936 |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 05 Dec 2020 19:37 Download mesaj |
Titlul subiectului: |
|
|
|
In mod ciudat forumul nu accepta sa pun mai mult de 3 operatori, asa ca ii pun intr-o postare noua.
== (egal cu)
> (mai mare ca)
>= (mai mare sau egal cu) _________________ 0770403936 |
|
Sus |
|
|
Erwin Moderator
Data inscrierii: 02 Aug 2008 Mesaje: 9476
Motto: panta rhei Localitate: Bucuresti
|
Trimis: 05 Dec 2020 20:42 Download mesaj |
Titlul subiectului: |
|
|
|
Cred că, dacă incluzi textul între tag-urile "Cod" te va lăsa să scrii.
Cod: | !
!= (nu este egal cu)
< (mai putin ca)
<mai> (mai mare ca)
>= (mai mare sau egal cu)
|
P.S. E ciudat, desi am scris textul complet l-a ciuntit cand am salvat. _________________ bino: 8x22, 7x42, 10x50, 10x80, spotting: 10x46, 20x60
Telescoape RFT70 F/4, 80/900, RFT 110 F/5.5, Meade 90 F/10, ED80 F/6
MTO-11CA 100/1000, Cass Clasic 8"F/15, dobson newt.158/1240 DH, 4"F/4.6
piston AZ mount (R), Vixen GP, minidob |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 05 Dec 2020 20:59 Download mesaj |
Titlul subiectului: |
|
|
|
Asa am patit si eu, am incercat mai multe variante, dar afiseaza ciudatenii. _________________ 0770403936 |
|
Sus |
|
|
Remus Boldis Membru
Data inscrierii: 03 Iun 2014 Mesaje: 464
Localitate: Buzias
|
Trimis: 07 Dec 2020 13:45 Download mesaj |
Titlul subiectului: |
|
|
|
Comenzi pe care le-am mai folosit dar mai detaliez :
delay() // asteapta - in paranteze se trece valoarea in milisecunde
delayMicroseconds() // asteapta - in paranteze se trece valoarea in microsecunde
micros() // contor al timpului trecut de la pornirea programului - in microsecunde
millis() // contor al timpului trecut de la pornirea programului - in milisecunde
_________________ 0770403936 |
|
Sus |
|
|
|
|
|
Nu puteti crea un subiect nou in acest forum Nu puteti raspunde in subiectele acestui forum Nu puteti modifica mesajele proprii din acest forum Nu puteti sterge mesajele proprii din acest forum Nu puteti vota in chestionarele din acest forum Nu puteti atasa fisiere in acest forum Puteti descarca fisiere in acest forum
|
|