Na ovoj stranici možete pronaći sve vezano uz čipove, Arduino, Adafruit, Itead i druge module. Uz provjerene programe i sheme spajanja.
Za lakšu navigaciju koristite se kategorijama ili tražilicom

Download: testvibracija.ino

Preuzimanje: testvibracija.ino Senzor Vibracija

Sam senzor sastoji se od dvije vodljive kuglice koje će pri udaru ili zakretu odvojiti od vodljivih nožica i time uzrokovati otvaranje ili zatvaranje strujnog krug. Iz samog načina rada možemo zaključiti očekivane vrijednosti. Pri normalnom načinu rada senzor je u potpunosti provodan i dati će nam očitanje od 1024 na analognom pinu možemo očekivati manje varijacije zbog gubitaka no ne značajne 1022-1024. Pri podrhtavanju kuglice se odvajaju i dobivamo značajno manja očitanja ovisno o jačini vibracije.

 

Tehničke karakteristike

  • Maksimalni napon:12V
  • Maksimalna struja: 20mA
  • Materijal: PVC, metal

 

Testiranje

Probni spoj senzora vrlo je jednostavan dovoljno je samo spojiti jednu nožicu na 5V a drugu na analogni pin po izboru te pokrenuti program za čitanje vrijednosti analognog pina koji se nalazi u primjerima Arduino IDE, te na serial monitoru pratiti vrijednosti koje dobivate sa senzora. Senzor u mirovanju veće od 1022 , senzor osjetio vibracije ispod 1022

 

Mini APP

Sada kada smo vidjeli da naš senzor radi, idemo spojiti uređaj koji će nam signalizirati s LED diodama ima li vibracija ili ne.

Senzor Vibracija

Shema je vrlo jednostavna, spajanje senzora je čisto jedna nožica 5V druga na A0. Mi smo koristili RGB diodu no koristite onu koju imate pri ruci. Važno je za naglasiti da je ovakav spoj RGB diode gdje je otpornik jedino na katodi jedino preporučljiv ako će biti upaljena samo jedna boja istovremeno te koristiti otpornike 330 Ohm

 

int senzorPin = A0;   // pin za senzor
int ledCrvena = 2;  // pinovi za LED diode
int ledZelena = 3;  // pinovi za LED diode
int senzorVrijednost = 0;  // spremanje vrijednosti senzora

void setup() {
  pinMode(ledCrvena, OUTPUT);
   pinMode(ledZelena, OUTPUT);
    pinMode(senzorPin, INPUT);
}

void loop() {
  
  // citanje podataka sa senzora
  senzorVrijednost = analogRead(senzorPin);
  Serial.println(senzorVrijednost);

  if(senzorVrijednost < 1022){
  digitalWrite(ledZelena, HIGH);
  digitalWrite(ledCrvena, LOW);
  }
  else{
    digitalWrite(ledZelena, LOW);
  digitalWrite(ledCrvena, HIGH);
    }
  delay(50);
}