Second Opinion
Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale. Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit. www.neurohope.ro |
Ajutor idee - arduino sau Esp8266
Last Updated: Jan 31 2024 22:14, Started by
rodanny
, Jan 29 2024 00:43
·
4
#1
Posted 29 January 2024 - 00:43
Va salut,
Am urmatoarea problema. Am un dispozitiv format dintr-un senzor optic si o roata cu mai multe "taieturi", caneluri . Doresc sa stiu in momentul cand roata se invarte cand ajunge in pozitia 0. Pozitia 0 e formata dintr-o fanta ingusta (asa cum sunt toate celelate) si una mai groasa cam de 2 ori poate chair de 3 ori mai mare. Roata este angrenata de un motoras alimentat printr-un releu, si vreau sa o aduc in pozitia "0", iar de acolo la intervale regulate sa porneasca motorasul si sa invarta roata pana la urmatoarea fanta. Ca idee Ma gandesc ca ar trebui sa invarta motorasul roata pana cand la un interval scurt de timp dupa ce gaseste o fanta, mai intalaneste o fanta ce "dureaza" mai mult. Eventual sa ma pot juca cu ceva reglaje de fiente. Nu stiu daca pot face in asa fel incat sa masor timpul de on si off si in acest fel sa im dau seama in ce pozitie se afla. In final trebuie sa reusesc sa opresc motorul in fiecare pozitie din cele 7+1 din imagine. Inreresant ar fi sa il pot scrie codul pentru un ESP8266 dar e ok si pt arduino....ca il putem adapta cred..... Multumesc pentru sfaturi. Attached Files |
#2
Posted 29 January 2024 - 01:04
https://en.wikipedia.../Rotary_encoder
"senzor optic", de care ? emitor-receptor ? emitor-receptor-reclector ? emitor-receptor detectie/suprimare fundal ? |
#3
Posted 29 January 2024 - 08:21
Cu biblioteca PulseIn ar trebui să se poată face relativ simplu ceea ce dorești.
|
#4
Posted 29 January 2024 - 09:47
MarianG, on 29 ianuarie 2024 - 01:04, said:
https://en.wikipedia.../Rotary_encoder "senzor optic", de care ? emitor-receptor ? emitor-receptor-reclector ? emitor-receptor detectie/suprimare fundal ? Scuze revin cu poza.... e un senzor emitator receptor.... Poza din postarea anterioara e vedere din fata..... Mai pun o poza vazut din latera....e zona cu denumirea "Slots". Am mai uitat sa zic ca senzorul e analog.....e doar asemanator cu cel din poza..... insa e analog nu si digital. Multumesc Attached FilesEdited by rodanny, 29 January 2024 - 09:54. |
#5
Posted 29 January 2024 - 13:39
Intercalezi un comparator (eventual și cu histerezis) și devine digital.
|
#6
Posted 29 January 2024 - 14:57
mihaicozac, on 29 ianuarie 2024 - 13:39, said:
Intercalezi un comparator (eventual și cu histerezis) și devine digital. ups cred ca m-ai pierdut..... adica sa citesc intr-o variabila in functie de momnetul cand e obturat senzorul sa pun 1 si cand nu e obturart sa pun 0 si sa injectez in functia PulseIn() ? |
#7
Posted 29 January 2024 - 15:03
A, nu, în exterior cu un operațional clasic, care să livreze semnal cu fronturi curate spre Arduino, la unul din pinii unde pulseIn poate citi date (PWM). Deși poate că nu ar fi nevoie neapărat, dacă motorul se învârte rapid. Ar trebui văzut cu osciloscopul cât de rapide și curate sunt flancurile semnalului de la senzor.
|
#8
Posted 29 January 2024 - 16:06
mihaicozac, on 29 ianuarie 2024 - 15:03, said:
A, nu, în exterior cu un operațional clasic, care să livreze semnal cu fronturi curate spre Arduino, la unul din pinii unde pulseIn poate citi date (PWM). Deși poate că nu ar fi nevoie neapărat, dacă motorul se învârte rapid. Ar trebui văzut cu osciloscopul cât de rapide și curate sunt flancurile semnalului de la senzor. se invarte f f incet....2-3 rotatii pe minut....insa sunt f curate pa analog m-am jcuat si alimentat la 3v...am 1V cand e obturat si 0,30-0,35 maxim cand e liber.....deci.... |
#9
Posted 29 January 2024 - 16:15
1V sau 0,3V pt. Arduino tot nivel LOW înseamnă. Abia de pe la 2,5V e considerat nivel HIGH. iar dacă frecvența impulsurilor e sub 1Hz ai nevoie neapărat de formator de semnal cu histerezis. Cum am mai scris un comparator analogic poate face și conversia de nivel și curățarea flancurilor.
|
#10
Posted 29 January 2024 - 16:23
Poate sa faca treaba asta si cu citire pe ADC si histerezis in SW, fara niciun alt HW.
|
|
#11
Posted 29 January 2024 - 16:35
byteworks, on 29 ianuarie 2024 - 16:23, said:
Poate sa faca treaba asta si cu citire pe ADC si histerezis in SW, fara niciun alt HW. te rog frumos, poti detalia? un exemplu ceva? Multumesc mihaicozac, on 29 ianuarie 2024 - 16:15, said:
1V sau 0,3V pt. Arduino tot nivel LOW înseamnă. Abia de pe la 2,5V e considerat nivel HIGH. iar dacă frecvența impulsurilor e sub 1Hz ai nevoie neapărat de formator de semnal cu histerezis. Cum am mai scris un comparator analogic poate face și conversia de nivel și curățarea flancurilor. inteleg ca ar trebui sa folosesc un convertor analog to digital? |
#12
Posted 29 January 2024 - 16:37
#13
Posted 29 January 2024 - 17:06
rodanny, on 29 ianuarie 2024 - 16:35, said:
te rog frumos, poti detalia? un exemplu ceva? Multumesc E simplu, uite un exemplu https://www.aranacor...sis-on-arduino/ |
#15
Posted 29 January 2024 - 23:09
rares3968, on 29 ianuarie 2024 - 18:23, said:
Ai verificat daca roata intra prin senzor? este senzorul rotii actuale.... daca nu ...puenam unul cu iesire si digitala si simplificam..dar din nefericere nu am cum sa pun alt senzor... byteworks, on 29 ianuarie 2024 - 17:06, said:
E simplu, uite un exemplu https://www.aranacor...sis-on-arduino/ interesant...dar util era cat de mult sta in fiecare pozitie...on sau off....asa cum returneaza PulseIN() ceva idei? repet am un ESP8266 (nodemecu 12F) Multumesc |
|
#16
Posted 30 January 2024 - 07:29
Poți face ceva de genul următor: citești semnalul de la senzor pe ADC, îl condiționezi și prelucrezi software apoi îl scoți pe unul din pini pe care îl legi fizic cu un alt pin de intrare care e suportat de PulseIn.
|
#17
Posted 30 January 2024 - 09:04
Pffff mai copii mici si mari, de ce complicati lucrurile?
O solutie: folosesti millis sau micros ca sa masori durata cat semnalul e zero, dupa aplicarea histerezisului de mai sus. Iti va iesi de exemplu 2 ms si 6 ms. A doua solutie: daca poti face masurarea la intervale cat de cat regulate numeri rezultatele consecutive de zero. Vei avea de exemplu 10 si 30 zerouri. |
#18
Posted 30 January 2024 - 11:16
rodanny, on 29 ianuarie 2024 - 14:57, said:
ups cred ca m-ai pierdut..... adica sa citesc intr-o variabila in functie de momnetul cand e obturat senzorul sa pun 1 si cand nu e obturart sa pun 0 si sa injectez in functia PulseIn() ? https://www.ti.com/product/LM393 rodanny, on 29 ianuarie 2024 - 23:09, said:
este senzorul rotii actuale.... daca nu ...puenam unul cu iesire si digitala si simplificam..dar din nefericere nu am cum sa pun alt senzor... interesant...dar util era cat de mult sta in fiecare pozitie...on sau off....asa cum returneaza PulseIN() ceva idei? repet am un ESP8266 (nodemecu 12F) Multumesc hai ca intreb si eu o prostie care e diferenta intre o fanta si o alta, daca lumina trece 100% |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users