Информационный портал MSEVM






Главная > Arduino > Учебник для MEGA2560 > Урок 08. Tilt Ball Switch (Шариковый датчик наклона).


На этом уроке вы узнаете, как использовать шариковый датчик наклона, чтобы обнаруживать небольшие угол наклона

Необходимые компоненты:

  • Lafvin Mega2560 R3 - 1шт.
  • Tilt Ball Switch - 1шт.
  • F-М провода - 2шт.


Описание компонентов

Датчик наклона:

Датчики наклона (шариковый переключатель наклона) позволяют определять ориентацию или наклон. Маленький, недорогой, маломощный и простой в использовании. Простота делает их популярными для игрушек, гаджетов и бытовой техники. Иногда их называют "ртутными датчиками", "наклонными датчиками" или "вращающимися шаровыми датчиками" по понятным причинам. Они обычно состоят из какой-то полости (цилиндрической является популярным, хотя не всегда) с проводящей свободной массой внутри, такой как капля ртути или стальной шарик. Один конец полости имеет два проводящих элемента (полюса). Когда датчик ориентированный так, что этот выводы направлены вниз, шарик замыкает выводы, выступая в качестве переключателя. Хотя эти датчики и не такие точные, как акселерометр, они могут регистрировать движение или ориентацию. Еще одним преимуществом является то, что мощные датчики наклона могут быть перключателями питания. В отличии от них, акселерометры, выдают цифровое или аналоговое напряжение, которое затем должно обрабатываться с использованием дополнительных схем.



Принципиальная схема:



Монтажная схема:



Код:

После подключения, пожалуйста, откройте программу из папки с кодом - Урок 8 "Ball Switch" и нажмите ЗАГРУЗИТЬ, чтобы загрузить программу. См. Урок 2 для получения подробной информации о процессе загрузки, если есть какие-либо ошибки.

/*****************************************/
const int ledPin = 13;//the led attach to

void setup()
{ 
  pinMode(ledPin,OUTPUT);//initialize the ledPin as an output
  pinMode(2,INPUT);
  digitalWrite(2, HIGH);
} 
/******************************************/
void loop() 
{  
  int digitalVal = digitalRead(2);
  if(HIGH == digitalVal)
  {
    digitalWrite(ledPin,LOW);//turn the led off
  }
  else
  {
    digitalWrite(ledPin,HIGH);//turn the led on 
  }
}
/**********************************************/


Пример:





Тема форума: http://msevm.com/forum/index.php?topic=9893





e-mail рассылки
Радиолюбитель
Подписаться письмом

















afb44aa5




Яндекс цитирования Rambler's Top100