ARDUINO RPI-1031 4 سنسور جهت
اصل عملیات
- بر اساس اصول اپتیک، فضای داخلی آن دارای LED برای 1 عدد، ترایود گیرنده حساس به نور برای 2 عدد است؛ و سمت دیگر دارای یک سایه استوانه ای است، همانطور که در تصویر نشان می دهد:
نمودار مدار
- با سایه استوانه ای برای جلوگیری از LED، و لوله دریافت حساس به نور برای تشخیص وضعیت فعلی RPl-1031 است.
- هنگامی که RPl-1031 به حالت نشان داده شده در زیر میچرخد، LED تحت سایه قرار میگیرد؛ و دو تریود گیرنده حساس به نور نمیتوانند نور را دریافت کنند؛ آنها در حالت خاموش هستند. خروجی سطح پایین است؛ دو پورت GPIO هر دو سطح خروجی پایینی دارند.
- هنگامی که RPl-1031 به حالت نشان داده شده در زیر میچرخد، یکی از سهراهههای حساس به نور سایه میافتد، نور ساطع شده از LED فقط میتواند توسط دیگری دریافت شود؛ این بدان معناست که تریود حساس به نور بالا روشن است، و تریود حساس به نور در زیر سمت خاموش است. سپس دو پورت GPIO به ترتیب خروجی سطح بالا و پایین خروجی می دهند.
- هنگامی که RPl-1031 به حالت نشان داده شده در زیر می چرخد، سایه سایه نمی اندازد، دیود می درخشد، دو تریود حساس به نور می توانند نور را دریافت کنند؛ سپس همه آنها روشن خواهند بود. هر دو درگاه GPIO در سطح بالایی خروجی دارند.
- هنگامی که RPl-1031 به حالتی که در زیر نشان داده شده است می چرخد. این وضعیت با شرح 4 مخالف است.
شکل 2: Sampاتصالات
Sampکدهای
I*
سنسور زاویه 1031 سنسور e-Gizmo RPl-4
این به عنوانampطرحی برای سنسور جهت شیب برای نمایش موقعیت های خروجی سنسور.
برای RPl-1031 - http://www.sparkfun.com/products/10621
اصلاح شده توسط e-Gizmo Mechatronix Central
http://www.e-gizmo.com
جولای 18,2017
*I
#define TILT S1 4
#define TILT_S2 5
#define LED_ TOP 8
#define LED RIGHT 9
#define LED BOTTOM 10
#define LED_LEFT 11
void setup{){
}
Serial.begin(9600);
pinMode(TILT_S1, INPUT);
pinMode(TILT_S2, INPUT);
pinMode(LED TOP, OUTPUT);
pinMode(LED RIGHT, OUTPUT);
pinMode(LED_BOTTOM, OUTPUT);
pinMode(LED_LEFT, OUTPUT);
void loop{){
int position = GET_ TILT POSITION();
Serial.println(position);
//TOP
if(position == 0)
{
}
digitalWrite(LED_TOP, HIGH);
digitalWrite(LED_RIGHT, LOW);
digitalWrite(LED BOTTOM, LOW);
digitalWrite(LED LEFT, LOW);
//RIGHT
if(position == 2)
{
digitalWrite(LED TOP, LOW);
digitalWrite(LED_RIGHT, HIGH);
digitalWrite(LED BOTTOM, LOW);
digitalWrite(LED_LEFT, LOW);
void loop{){
int position = GET_ TILT POSITION();
Serial.println(position);
//TOP
if(position == 0)
{
}
digitalWrite(LED_TOP, HIGH);
digitalWrite(LED_RIGHT, LOW);
digitalWrite(LED BOTTOM, LOW);
digitalWrite(LED LEFT, LOW);
//RIGHT
if(position == 2)
{
digitalWrite(LED TOP, LOW);
digitalWrite(LED_RIGHT, HIGH);
digitalWrite(LED BOTTOM, LOW);
digitalWrite(LED_LEFT, LOW);
}
//LEFT
if(position == 1)
{
}
digitalWrite(LED TOP, LOW);
digitalWrite(LED_RIGHT, LOW);
digitalWrite(LED BOTTOM, LOW);
digitalWrite(LED_LEFT, HIGH);
//BOTTOM
if(position == 3)
{
}
digitalWrite(LED TOP, LOW);
digitalWrite(LED RIGHT, LOW);
digitalWrite(LED_BOTTOM, HIGH);
digitalWrite(LED LEFT, LOW);
delay(200); //DELAY
}
int GET_TILT_POSITION(){
int S1 = digitalRead(TILT_S1);
int S2 = digitalRead(TILT _S2);
return (S1 << 1) I S2; //BITWISE MATH
}
شکل 3: خروجی چاپ سریال از سنسور pH.
اسناد / منابع
![]() |
ARDUINO RPI-1031 4 سنسور جهت [pdf] دفترچه راهنمای کاربر RPI-1031 4 سنسور جهت، RPI-1031، سنسور جهت 4، سنسور جهت، سنسور |