وسایل مورد نیاز

Ard nano
Arduino Nano R3
برد اردینیو
×1
Omron b3f 1000 image 75px
SparkFun Pushbutton switch 12mm
سوییج 0و1 ساده
×1
12002 04
Breadboard (generic)
برد برد
×1
11026 02
Jumper wires (generic)
سیم برد برد
×1

و نرم افزار :https://www.arduino.cc/en/Main/Software

یا از سایتهای داخلی دانلئد نمایید

درباره این پروژه معرفی

آیا شما از پین های ورودی خارج شده اید، نگران نباشید، این یک راه حل بدون هیچ تغییری است. در این ویدئو ما در مورد اتصال بیش از 100 سوئیچ به یک پین آردوینو یاد می گیریم.

نظریه کار

ابتدا نگاهی به نمودار مدار می اندازید و دیگران نمی توانند درک کنند که من چه می گویم. هر بار که یک سوئیچ را فشار می دهم مدار از طریق تعداد مختلف مقاومت ها کامل می شود، در مدار، اگر ما سوئیچ 5 را فشار دهیم، مدار از طریق تمام 4 مقاومت به پایان می رسد، اگر ما سوئیچ 4 را فشار دهیم، مدار از طریق 3 مقاومت خاتمه می یابد، اگر ما سوئیچ 3 را فشار دهیم مدار از طریق 2 مقاومت خاتمه می یابد، اگر ما سوئیچ دوم را فشار دهیم مدار از طریق 1 مقاومت خاتمه می یابد و اگر ما اول سوئیچ را فشار دهیم مدار بدون هیچ گونه مقاومت مقاومت می کند. به این معناست که در حال رسیدن به پین ​​آنالوگ A1 برای هر یک از سوئیچ ها متفاوت خواهد بود، بنابراین از تابع analogRead () برای خواندن مقادیر از پین A1 استفاده می کنیم و سپس اگر شرایط را برای انجام عملیات های مختلف برای هر سوئیچ انجام دهیم، استفاده می کنیم. بیایید ساخت اولین سوئیچ فشار را به یک صفحه نان وصل کنید. البته شما می توانید حداکثر 1023 سوئیچ را به طور نظری به یک کنترل کننده 8 بیتی مانند Arduino متصل کنید. سپس مقاومت بین مقاومت در میان سوئیچ های فشار را در نمودار نشان داده شده است. انتهای دیگر تمام سوئیچ ها را به 5v از آردوینو وصل کنید، همانطور که می بینید در اینجا من به گونه ای وصل شده ام که یک قسمت از آن به خط آبی هیئت مدیره ریش که به 5v متصل است متصل است. سپس از انتهای سوئیچ نهایی یک سیم به پین ​​A1 آدائینو وصل کنید. سپس یک مقاومت در سراسر A1 و GND آردوینو، که برای پایین کشیدن است، متصل می شود، به این معنی است که هیچ سوئیچ فشرده نشود.

برخی از LED ها را وصل کنید اجازه می دهیم برخی از LED ها را برای بررسی عملکرد مدار ما وصل کنیم

LED ها را همانطور که در مدار نشان داده شده وصل کنید تمام پایانه های مثبت تمام LED ها را به 5V وصل کنید. ترمینال منفی هر LED را به دیجیتال D12 تا D8 از Arduino وصل کنید. عملا ما باید LED ها را از طریق مقاومت ها برای مدت زمان خوب، متصل کنیم. رمزگذاری به برنامه نگاهی بیاندازید، تمام سطرها به درستی مورد نظر هستند. حالا کد را آپلود کنید و آن را در عمل مشاهده کنید.

#define sw A1 //name for analog pin A1
#define led1 12
#define led2 11
#define led3 10
#define led4 9
#define led5 8

void setup() 
{
  Serial.begin(9600);
  pinMode(led1,INPUT); digitalWrite(led1,HIGH); //setting led1 pin HIGH ie LED will be off according to our circuit
  pinMode(led2,INPUT); digitalWrite(led2,HIGH); //setting led2 pin HIGH ie LED will be off according to our circuit
  pinMode(led3,INPUT); digitalWrite(led3,HIGH); //setting led3 pin HIGH ie LED will be off according to our circuit
  pinMode(led4,INPUT); digitalWrite(led4,HIGH); //setting led4 pin HIGH ie LED will be off according to our circuit
  pinMode(led5,INPUT); digitalWrite(led5,HIGH); //setting led5 pin HIGH ie LED will be off according to our circuit

}

void loop() 
{
  Serial.println(analogRead(sw)); // reading and printing the values from analog pin A1

  if(analogRead(sw) >197 && analogRead(sw) <207 )
  digitalWrite(led1,LOW);// LED will turn ON
  else if(analogRead(sw) >248 && analogRead(sw) <258)
  digitalWrite(led2,LOW);// LED2 will turn ON
  else if(analogRead(sw) >333 && analogRead(sw) <343)
  digitalWrite(led3,LOW);// LED3 will turn ON
  else if(analogRead(sw) >509 && analogRead(sw) <514)
  digitalWrite(led4,LOW);// LED2 will turn ON
  else if(analogRead(sw) >1015 && analogRead(sw) <1023)
  digitalWrite(led5,LOW);// LED2 will turn ON
  

}

و

و تمام لذت ببرید

آموزش آردوینو

اصول Basic و شگفتی محض

شمیم تکنودوینو

همراه تکنودوینو

Happiness is after work!Life in the technology base!

Arduino یک شرکت سخت افزاری و نرم افزاری منبع باز، پروژه و کاربرانی است که یک کیت میکروکنترلر تک و یکپارچه را برای ساخت دستگاه های دیجیتال و اشیا تعاملی طراحی می کند که می توانند به صورت فیزیکی و دیجیتالی احساس و کنترل کنند. محصولات آن تحت مجوز GNU Lesser General Public License (LGPL) یا مجوز عمومی عمومی GNU (GPL) [1] اجازه تولید تابلوهای Arduino و توزیع نرم افزار توسط هر کسی را دارند. هیئت مدیره Arduino به صورت تجاری به صورت پیش ساخته یا کیت های DIY انجام می شود. طرح های هیئت مدیره Arduino از انواع ریزپردازنده ها و کنترل کننده ها استفاده می کنند. تابلوهای مجهز به مجموعه ای از پین ها ورودی / خروجی (I / O) دیجیتال و آنالوگ هستند که ممکن است به صفحات مختلف گسترش یا مقاطع (سپر) و مدارهای دیگر متصل شوند. این تخته ها دارای رابط های سریال ارتباطی، از جمله Universal Serial Bus (USB) در بعضی از مدل ها هستند که همچنین برای بارگیری برنامه ها از رایانه های شخصی استفاده می شود. میکروکنترلرها معمولا با استفاده از یک زبان از ویژگی های زبان های برنامه نویسی C و C ++ برنامه ریزی می شوند. پروژه Arduino علاوه بر استفاده از ابزارهای زنجیره کامپایلر، یک محیط توسعه یکپارچه (IDE) را براساس پروژه زبان پردازش فراهم می کند. پروژه آردوینو در سال 2003 به عنوان یک برنامه برای دانش آموزان در موسسه طراحی تعامل Ivrea در Ivrea، ایتالیا آغاز شد، [2] با هدف ارائه راه ارزان و آسان برای تازه کارها و حرفه ای ها برای ایجاد دستگاه هایی که با محیط خود با استفاده از حسگرها و محرکها نمونه های معمولی از جمله دستگاه هایی که برای سرگرمی های مبتدی مورد استفاده قرار می گیرند عبارتند از ربات های ساده، ترموستات ها و آشکارسازهای حرکت. نام آردوینو از نوار در Ivrea ایتالیا می آید، که بعضی از بنیانگذاران این پروژه برای دیدار با آنها حضور داشتند. این نوار به نام Arduin Ivrea نامگذاری شد که از مارس Ivrea و پادشاه ایتالیا از 1002 تا 1014 نامگذاری شد. [3]

 
آردوینو
Arduino Logo.svg Genuino Logo.svg
Arduino Uno SMD R3
arduino.cc برنامه نویس
سازنده بسیاری
نوع یک میکروکنترلر یکپارچه
سیستم عامل هیچ
پردازنده Atmel AVR (8 بیتی)،
ARM Cortex-M0 + (32 بیتی)،
ARM Cortex-M3 (32 بیتی)،
اینتل کوارک (x86) (32 بیتی)
SRAM حافظه
ذخیره سازی فلش، EEPROM
وب سایت www.arduino.cc

تاریخ پروژه آردوینو در موسسه طراحی تعامل Ivrea (IDII) در Ivrea ایتالیا آغاز شد. [2] در آن زمان، دانش آموزان از یک میکروکنترلر BASIC Stamp با هزینه 50 دلار استفاده کردند، هزینه قابل توجهی برای بسیاری از دانش آموزان بود. در سال 2003، هرناندو باراژان، پیمان توسعه سیم کشی را به عنوان یک پروژه پایان نامه کارشناسی ارشد در IDII،
تحت نظارت ماسیمو بانزی و کیسی راس تاسیس کرد. Casey Reas برای ایجاد همکاری شناخته شده است، با بن فرای، پلت فرم توسعه پردازش. هدف این پروژه ایجاد ابزار ساده و کم هزینه برای ایجاد پروژه های دیجیتال توسط غیر مهندسان بود. پلت فرم سیم کشی شامل یک مدار چاپی (PCB) با یک میکروکنترلر Atmega168، یک IDE مبتنی بر پردازش و کتابخانه است که به راحتی میکروکنترلر را برنامه ریزی می کند.[4] در سال 2003، ماسیمیو بانزی با دیوید مللی، یکی از دانش آموزان IDII و دیوید کوارتیلز، پشتیبانی از میکروکنترلر ATmega8 ارزانتر را به سیم کشی اضافه کرد. اما به جای ادامه کار بر روی سیم کشی، آنها پروژه را بچرخانند و آن را آردوینو تغییر نام دادند. [4] تیم اصلی آودوینو شامل Massimo Banzi، David Cuartielles، Tom Igoe، Gianluca Martino و David Mellis بود. [2] اما Barragán از شرکت دعوت نشد.

Project//

1

روشن کردن چراغ با دست زدن با ماژول میکروفن خازنی

Clap Lamp Arduino

فرمان دادن به اشیا جز با علم الکترونیک امکان پذیر نمی‌باشد. امروزه با وجود امبدد سیستم‌ها از جمله برد آردوینو Arduino این موضوع به سادگی قابل اجراست. کافیست کدهای کامپیوتری را به برد امبدد اضافه کنیم و تمام. در این آموزش قصد داریم یک چراغ را با استفاده از دست زدن روشن کنیم. در ادامه با مرجع تخصصی آردوینو به زبان فارسی همراه باشید.

برای این کار به ماژول میکروفن خازنی نیاز داریم. ماژول میکروفن خازنی با مولتی ترن Microphone دارای خروجی آنالوگ و دیجیتال می‌باشد. پایه AO خروجی آنالوگ و همزمان صدای میکروفن می‌باشد. خروجی DO برای زمانی است که شدت صدا به یک آستانه خاصی برسد. که این هم با استفاده از مولتی ترن روی ماژول قابل تنظیم است. مولتی ترن ماژول را طوری تنظیم میکنیم که با دست زدن خروجی DO فعال شود.

اتصالات مدار Clap Lamp

ماژول میکروفن خازنی دارای ۴ پایه می‌باشد. در این آموزش از ۳ پایه آن استفاده می‌کنیم. پایه‌های G و + برای تغذیه هستند و به زمین و ۳٫۳ ولت آردوینو پرو مینی Pro mini متصل می‌شوند. مدار پین DO ماژول میکروفن را به پین ۸ و سر مثبت ال ای دی را به ۹ متصل کرده ایم.

آموزش روشن کردن چراغ با دست زدن توسط ماژول میکروفن خازنی و آردوینو - دیجی اسپارک

وسایل مورد نیاز آموزش ماژول میکروفن

کد آردوینو Clap Lamp

//تعریف پین ها
#define sensorPin 8
#define ledPin 9

int led=0;
unsigned long currentMillis,sec;

void setup () {
pinMode (ledPin, OUTPUT);
Serial.begin (9600);
}

void loop () {
//شرط فعال شدن ماژول برای دفعه اول
if (digitalRead(sensorPin) == 1){
delay(10);
Serial.println(“first time!”);
currentMillis = millis();
sec = millis();
//منتظر برای دو ثانیه
while (sec – currentMillis < 2000){
//شرط فعال شدن ماژول برای دفعه دوم
if (digitalRead(sensorPin) == 1){
Serial.println(“second time!”);
digitalWrite(ledPin, led=!led);
delay(10);
break;
}
sec = millis();
}
}
}

دماسنج، وسیله‌ای پرکاربرد، بر مبنای واحدهای مختلف دما را اندازه گیری می‌کند. در مبحث اینترنت اشیا این مورد بسیار اهمیت دارد. دماسنج انواع مختلفی دارد، در این آموزش به یک نوع جدید و جالب اشاره می‌کنم. حتما گیج‌های سنجش صنعتی را دیده‌اید. یک عقربه‌ی دوار داخل محفظه‌ای خاص، در این پست آموزشی، دماسنج عقربه ای با استفاده از سروو موتور و ماژول دما رطوبت خواهیم ساخت. یک پروژه کاربری که هم امکان استفاده در منزل، محل کار و حتی به عنوان کاردستی برای مدرسه کاربرد دارد. در ادامه این آموزش با مرجع تخصصی آردوینو به زبان فارسیهمراه باشید.

اتصالات دماسنج عقربه‌ای


اطلاعات مختصر از ماژول دما رطوبت (مدل ماژول مورد استفاده در آموزش DHT11 )

پایه های ماژول دما رطوبت (۳ پایه) – دیتاشیت ماژول

پایه ی s = پایه ۲ آردوینو

پایه ی + (مثبت) = پایه ی ۳٫۳ یا ۵ ولت آردوینو

پایه ی – (منفی) = پایه ی GND آردوینو

پایه های سنسور دما رطوبت (۴ پایه) – دیتاشیت سنسور

پایه ی شماره ۱ – VCC = پایه ی ۳٫۳ یا ۵ ولت آردوینو

پایه ی شماره ۲ – DATA = پایه ۲ آردوینو

پایه ی شماره ۳ – NC = بلا استفاده

پایه ی شماره ۴ – GND = پایه ی GND آردوینو

termometer with servo motor arduino-digispark

اطلاعات مختصر از سروو موتور (مدل مورد استفاده در این آموزش SG90) – اطلاعات فنی

پایه ی سفید یا نارنجی (بستگی به مدل ) = پایه ی ۶ آردوینو

پایه ی قرمز = پایه ی ۵ ولت آردوینو

پایه سیاه یا قهوه ای = پایه ی GND آردوینو

اطلاعات مختصر از نمایشگر LCD  (مدل مورد استفاده در این آموزش ۱۶*۲) – دیتاشیت نمایشگر

پایه ی VCC  نمایشگر = پایه ی GND آردوینو

پایه ی VDD نمایشگر = پایه ی ۵ ولت آردوینو

پایه ی VO نمایشگر = پایه ی وسط پتانسیومتر (مقاومت متغییر)

پایه ی RS نمایشگر  = پایه ۸ آردوینو

پایه ی RW نمایشگر =پایه ی  GND آردوینو

پایه ی E نمایشگر = پایه ۹ آردوینو

پایه ی D4 نمایشگر = پایه ۱۰ آردوینو

پایه ی D5 نمایشگر = پایه ۱۱ آردوینو

پایه ی D6 نمایشگر = پایه ۱۲ آردوینو

پایه ی D7 نمایشگر = پایه ۱۳ آردوینو

پایه ی A نمایشگر = پایه ی ۵ ولت آردوینو

پایه ی K نمایشگر =  پایه ی GND آردوینو


کتابخانه دماسنج عقربه‌ای آردوینو


همانطور که می‌دانید برای راه اندازی هر پروژه‌ای در برد آردوینو نیاز به کتابخانه داریم. در پروژه دماسنج عقربه‌ای آردوینو از ۳ کتابخانه برای ماژول DHT و نمایشگر LCD و سرو موتور Servo Motor استفاده می‌کنیم. به ترتیب در زیر دستورات استفاده از کتابخانه‌ها به همراه لینک دانلود آخرین نسخه از دایرکتوری دانشجو کیت را ضمیمه کرده‌ام. چنانچه روش نصب کتابخانه در برد آردوینو را نمی‌دانید. از آموزش نصب کتابخانه در برد آردوینو که قبلا توسط یکی دیگر از اسپارکرها نوشته شده است، مراجعه کنید.

کتابخانه ی ماژول دما رطوبت (دانلود کتابخانه ماژول DHT)

کتابخانه ی نمایشگر LCD  (دانلود کتابخانه LiquidCrystal)

کتابخانه ی سروو موتور  (دانلود کتابخانه Servo)


کد آردوینو Arduino


جهت اجرای پروژه کدهای زیر را در کامپایلر آردوینو Arduino IDE وارد کنید. دقت کنید که این کدها فقط برای اسپارکرها نمایش داده می‌شود.

مهمان گرامی، جهت دسترسی به کدهای این پروژه، اسپارکر پلاس شوید.


وسایل مورد نیاز


ماژول دما رطوبت

سروو موتور

نمایشگر LCD 

برد آردوینو

شلید پروتوتایپ

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود داشت می‌توانید از همین طریق اطلاع رسانی کنید.

[php][php]//تعریف پین ها#define sensorPin 8#define ledPin 9int led=0;unsigned long currentMillis,sec;void setup () {pinMode (ledPin, OUTPUT);Serial.begin (9600);}void loop () {//شرط فعال شدن ماژول برای دفعه اولif (digitalRead(sensorPin) == 1){delay(10);Serial.println("first time!");currentMillis = millis();sec = millis();//منتظر برای دو ثانیهwhile (sec - currentMillis < 2000){//شرط فعال شدن ماژول برای دفعه دومif (digitalRead(sensorPin) == 1){Serial.println("second time!");digitalWrite(ledPin, led=!led);delay(10);break;}sec = millis();}}}[/php] [css autolinks="false" classname="myclass" collapse="false" firstline="1" gutter="true" highlight="1-3,6,9" htmlscript="false" light="false" padlinenumbers="false" smarttabs="true" tabsize="4" toolbar="true" title="example-filename.php"]your code here[/css] [code lang="js"]your code here[/code] [sourcecode language="plain"]your code here[/sourcecode]

وسایل مورد نیاز

Ard nano
Arduino Nano R3
برد اردینیو
×1
Omron b3f 1000 image 75px
SparkFun Pushbutton switch 12mm
سوییج 0و1 ساده
×1
12002 04
Breadboard (generic)
برد برد
×1
11026 02
Jumper wires (generic)
سیم برد برد
×1

و نرم افزار :https://www.arduino.cc/en/Main/Software

یا از سایتهای داخلی دانلئد نمایید

درباره این پروژه معرفی

آیا شما از پین های ورودی خارج شده اید، نگران نباشید، این یک راه حل بدون هیچ تغییری است. در این ویدئو ما در مورد اتصال بیش از 100 سوئیچ به یک پین آردوینو یاد می گیریم.

نظریه کار

ابتدا نگاهی به نمودار مدار می اندازید و دیگران نمی توانند درک کنند که من چه می گویم. هر بار که یک سوئیچ را فشار می دهم مدار از طریق تعداد مختلف مقاومت ها کامل می شود، در مدار، اگر ما سوئیچ 5 را فشار دهیم، مدار از طریق تمام 4 مقاومت به پایان می رسد، اگر ما سوئیچ 4 را فشار دهیم، مدار از طریق 3 مقاومت خاتمه می یابد، اگر ما سوئیچ 3 را فشار دهیم مدار از طریق 2 مقاومت خاتمه می یابد، اگر ما سوئیچ دوم را فشار دهیم مدار از طریق 1 مقاومت خاتمه می یابد و اگر ما اول سوئیچ را فشار دهیم مدار بدون هیچ گونه مقاومت مقاومت می کند. به این معناست که در حال رسیدن به پین ​​آنالوگ A1 برای هر یک از سوئیچ ها متفاوت خواهد بود، بنابراین از تابع analogRead () برای خواندن مقادیر از پین A1 استفاده می کنیم و سپس اگر شرایط را برای انجام عملیات های مختلف برای هر سوئیچ انجام دهیم، استفاده می کنیم. بیایید ساخت اولین سوئیچ فشار را به یک صفحه نان وصل کنید. البته شما می توانید حداکثر 1023 سوئیچ را به طور نظری به یک کنترل کننده 8 بیتی مانند Arduino متصل کنید. سپس مقاومت بین مقاومت در میان سوئیچ های فشار را در نمودار نشان داده شده است. انتهای دیگر تمام سوئیچ ها را به 5v از آردوینو وصل کنید، همانطور که می بینید در اینجا من به گونه ای وصل شده ام که یک قسمت از آن به خط آبی هیئت مدیره ریش که به 5v متصل است متصل است. سپس از انتهای سوئیچ نهایی یک سیم به پین ​​A1 آدائینو وصل کنید. سپس یک مقاومت در سراسر A1 و GND آردوینو، که برای پایین کشیدن است، متصل می شود، به این معنی است که هیچ سوئیچ فشرده نشود.

برخی از LED ها را وصل کنید اجازه می دهیم برخی از LED ها را برای بررسی عملکرد مدار ما وصل کنیم

LED ها را همانطور که در مدار نشان داده شده وصل کنید تمام پایانه های مثبت تمام LED ها را به 5V وصل کنید. ترمینال منفی هر LED را به دیجیتال D12 تا D8 از Arduino وصل کنید. عملا ما باید LED ها را از طریق مقاومت ها برای مدت زمان خوب، متصل کنیم. رمزگذاری به برنامه نگاهی بیاندازید، تمام سطرها به درستی مورد نظر هستند. حالا کد را آپلود کنید و آن را در عمل مشاهده کنید.

#define sw A1 //name for analog pin A1
#define led1 12
#define led2 11
#define led3 10
#define led4 9
#define led5 8

void setup() 
{
  Serial.begin(9600);
  pinMode(led1,INPUT); digitalWrite(led1,HIGH); //setting led1 pin HIGH ie LED will be off according to our circuit
  pinMode(led2,INPUT); digitalWrite(led2,HIGH); //setting led2 pin HIGH ie LED will be off according to our circuit
  pinMode(led3,INPUT); digitalWrite(led3,HIGH); //setting led3 pin HIGH ie LED will be off according to our circuit
  pinMode(led4,INPUT); digitalWrite(led4,HIGH); //setting led4 pin HIGH ie LED will be off according to our circuit
  pinMode(led5,INPUT); digitalWrite(led5,HIGH); //setting led5 pin HIGH ie LED will be off according to our circuit

}

void loop() 
{
  Serial.println(analogRead(sw)); // reading and printing the values from analog pin A1

  if(analogRead(sw) >197 && analogRead(sw) <207 )
  digitalWrite(led1,LOW);// LED will turn ON
  else if(analogRead(sw) >248 && analogRead(sw) <258)
  digitalWrite(led2,LOW);// LED2 will turn ON
  else if(analogRead(sw) >333 && analogRead(sw) <343)
  digitalWrite(led3,LOW);// LED3 will turn ON
  else if(analogRead(sw) >509 && analogRead(sw) <514)
  digitalWrite(led4,LOW);// LED2 will turn ON
  else if(analogRead(sw) >1015 && analogRead(sw) <1023)
  digitalWrite(led5,LOW);// LED2 will turn ON
  

}

و

و تمام لذت ببرید

آموزش آردوینو

اصول Basic و شگفتی محض

شمیم تکنودوینو

شمیم تکنودوینو

Happiness is after work!Life in the technology base!

Arduino یک شرکت سخت افزاری و نرم افزاری منبع باز، پروژه و کاربرانی است که یک کیت میکروکنترلر تک و یکپارچه را برای ساخت دستگاه های دیجیتال و اشیا تعاملی طراحی می کند که می توانند به صورت فیزیکی و دیجیتالی احساس و کنترل کنند. محصولات آن تحت مجوز GNU Lesser General Public License (LGPL) یا مجوز عمومی عمومی GNU (GPL) [1] اجازه تولید تابلوهای Arduino و توزیع نرم افزار توسط هر کسی را دارند. هیئت مدیره Arduino به صورت تجاری به صورت پیش ساخته یا کیت های DIY انجام می شود. طرح های هیئت مدیره Arduino از انواع ریزپردازنده ها و کنترل کننده ها استفاده می کنند. تابلوهای مجهز به مجموعه ای از پین ها ورودی / خروجی (I / O) دیجیتال و آنالوگ هستند که ممکن است به صفحات مختلف گسترش یا مقاطع (سپر) و مدارهای دیگر متصل شوند. این تخته ها دارای رابط های سریال ارتباطی، از جمله Universal Serial Bus (USB) در بعضی از مدل ها هستند که همچنین برای بارگیری برنامه ها از رایانه های شخصی استفاده می شود. میکروکنترلرها معمولا با استفاده از یک زبان از ویژگی های زبان های برنامه نویسی C و C ++ برنامه ریزی می شوند. پروژه Arduino علاوه بر استفاده از ابزارهای زنجیره کامپایلر، یک محیط توسعه یکپارچه (IDE) را براساس پروژه زبان پردازش فراهم می کند. پروژه آردوینو در سال 2003 به عنوان یک برنامه برای دانش آموزان در موسسه طراحی تعامل Ivrea در Ivrea، ایتالیا آغاز شد، [2] با هدف ارائه راه ارزان و آسان برای تازه کارها و حرفه ای ها برای ایجاد دستگاه هایی که با محیط خود با استفاده از حسگرها و محرکها نمونه های معمولی از جمله دستگاه هایی که برای سرگرمی های مبتدی مورد استفاده قرار می گیرند عبارتند از ربات های ساده، ترموستات ها و آشکارسازهای حرکت. نام آردوینو از نوار در Ivrea ایتالیا می آید، که بعضی از بنیانگذاران این پروژه برای دیدار با آنها حضور داشتند. این نوار به نام Arduin Ivrea نامگذاری شد که از مارس Ivrea و پادشاه ایتالیا از 1002 تا 1014 نامگذاری شد. [3]

 
آردوینو
Arduino Logo.svg Genuino Logo.svg
Arduino Uno SMD R3
arduino.cc برنامه نویس
سازنده بسیاری
نوع یک میکروکنترلر یکپارچه
سیستم عامل هیچ
پردازنده Atmel AVR (8 بیتی)،
ARM Cortex-M0 + (32 بیتی)،
ARM Cortex-M3 (32 بیتی)،
اینتل کوارک (x86) (32 بیتی)
SRAM حافظه
ذخیره سازی فلش، EEPROM
وب سایت www.arduino.cc

تاریخ پروژه آردوینو در موسسه طراحی تعامل Ivrea (IDII) در Ivrea ایتالیا آغاز شد. [2] در آن زمان، دانش آموزان از یک میکروکنترلر BASIC Stamp با هزینه 50 دلار استفاده کردند، هزینه قابل توجهی برای بسیاری از دانش آموزان بود. در سال 2003، هرناندو باراژان، پیمان توسعه سیم کشی را به عنوان یک پروژه پایان نامه کارشناسی ارشد در IDII،
تحت نظارت ماسیمو بانزی و کیسی راس تاسیس کرد. Casey Reas برای ایجاد همکاری شناخته شده است، با بن فرای، پلت فرم توسعه پردازش. هدف این پروژه ایجاد ابزار ساده و کم هزینه برای ایجاد پروژه های دیجیتال توسط غیر مهندسان بود. پلت فرم سیم کشی شامل یک مدار چاپی (PCB) با یک میکروکنترلر Atmega168، یک IDE مبتنی بر پردازش و کتابخانه است که به راحتی میکروکنترلر را برنامه ریزی می کند.[4] در سال 2003، ماسیمیو بانزی با دیوید مللی، یکی از دانش آموزان IDII و دیوید کوارتیلز، پشتیبانی از میکروکنترلر ATmega8 ارزانتر را به سیم کشی اضافه کرد. اما به جای ادامه کار بر روی سیم کشی، آنها پروژه را بچرخانند و آن را آردوینو تغییر نام دادند. [4] تیم اصلی آودوینو شامل Massimo Banzi، David Cuartielles، Tom Igoe، Gianluca Martino و David Mellis بود. [2] اما Barragán از شرکت دعوت نشد.

Project//

1

روشن کردن چراغ با دست زدن با ماژول میکروفن خازنی

Clap Lamp Arduino

فرمان دادن به اشیا جز با علم الکترونیک امکان پذیر نمی‌باشد. امروزه با وجود امبدد سیستم‌ها از جمله برد آردوینو Arduino این موضوع به سادگی قابل اجراست. کافیست کدهای کامپیوتری را به برد امبدد اضافه کنیم و تمام. در این آموزش قصد داریم یک چراغ را با استفاده از دست زدن روشن کنیم. در ادامه با مرجع تخصصی آردوینو به زبان فارسی همراه باشید.

برای این کار به ماژول میکروفن خازنی نیاز داریم. ماژول میکروفن خازنی با مولتی ترن Microphone دارای خروجی آنالوگ و دیجیتال می‌باشد. پایه AO خروجی آنالوگ و همزمان صدای میکروفن می‌باشد. خروجی DO برای زمانی است که شدت صدا به یک آستانه خاصی برسد. که این هم با استفاده از مولتی ترن روی ماژول قابل تنظیم است. مولتی ترن ماژول را طوری تنظیم میکنیم که با دست زدن خروجی DO فعال شود.

اتصالات مدار Clap Lamp

ماژول میکروفن خازنی دارای ۴ پایه می‌باشد. در این آموزش از ۳ پایه آن استفاده می‌کنیم. پایه‌های G و + برای تغذیه هستند و به زمین و ۳٫۳ ولت آردوینو پرو مینی Pro mini متصل می‌شوند. مدار پین DO ماژول میکروفن را به پین ۸ و سر مثبت ال ای دی را به ۹ متصل کرده ایم.

آموزش روشن کردن چراغ با دست زدن توسط ماژول میکروفن خازنی و آردوینو - دیجی اسپارک

وسایل مورد نیاز آموزش ماژول میکروفن

کد آردوینو Clap Lamp

//تعریف پین ها
#define sensorPin 8
#define ledPin 9

int led=0;
unsigned long currentMillis,sec;

void setup () {
pinMode (ledPin, OUTPUT);
Serial.begin (9600);
}

void loop () {
//شرط فعال شدن ماژول برای دفعه اول
if (digitalRead(sensorPin) == 1){
delay(10);
Serial.println(“first time!”);
currentMillis = millis();
sec = millis();
//منتظر برای دو ثانیه
while (sec – currentMillis < 2000){
//شرط فعال شدن ماژول برای دفعه دوم
if (digitalRead(sensorPin) == 1){
Serial.println(“second time!”);
digitalWrite(ledPin, led=!led);
delay(10);
break;
}
sec = millis();
}
}
}

دماسنج، وسیله‌ای پرکاربرد، بر مبنای واحدهای مختلف دما را اندازه گیری می‌کند. در مبحث اینترنت اشیا این مورد بسیار اهمیت دارد. دماسنج انواع مختلفی دارد، در این آموزش به یک نوع جدید و جالب اشاره می‌کنم. حتما گیج‌های سنجش صنعتی را دیده‌اید. یک عقربه‌ی دوار داخل محفظه‌ای خاص، در این پست آموزشی، دماسنج عقربه ای با استفاده از سروو موتور و ماژول دما رطوبت خواهیم ساخت. یک پروژه کاربری که هم امکان استفاده در منزل، محل کار و حتی به عنوان کاردستی برای مدرسه کاربرد دارد. در ادامه این آموزش با مرجع تخصصی آردوینو به زبان فارسیهمراه باشید.

اتصالات دماسنج عقربه‌ای


اطلاعات مختصر از ماژول دما رطوبت (مدل ماژول مورد استفاده در آموزش DHT11 )

پایه های ماژول دما رطوبت (۳ پایه) – دیتاشیت ماژول

پایه ی s = پایه ۲ آردوینو

پایه ی + (مثبت) = پایه ی ۳٫۳ یا ۵ ولت آردوینو

پایه ی – (منفی) = پایه ی GND آردوینو

پایه های سنسور دما رطوبت (۴ پایه) – دیتاشیت سنسور

پایه ی شماره ۱ – VCC = پایه ی ۳٫۳ یا ۵ ولت آردوینو

پایه ی شماره ۲ – DATA = پایه ۲ آردوینو

پایه ی شماره ۳ – NC = بلا استفاده

پایه ی شماره ۴ – GND = پایه ی GND آردوینو

termometer with servo motor arduino-digispark

اطلاعات مختصر از سروو موتور (مدل مورد استفاده در این آموزش SG90) – اطلاعات فنی

پایه ی سفید یا نارنجی (بستگی به مدل ) = پایه ی ۶ آردوینو

پایه ی قرمز = پایه ی ۵ ولت آردوینو

پایه سیاه یا قهوه ای = پایه ی GND آردوینو

اطلاعات مختصر از نمایشگر LCD  (مدل مورد استفاده در این آموزش ۱۶*۲) – دیتاشیت نمایشگر

پایه ی VCC  نمایشگر = پایه ی GND آردوینو

پایه ی VDD نمایشگر = پایه ی ۵ ولت آردوینو

پایه ی VO نمایشگر = پایه ی وسط پتانسیومتر (مقاومت متغییر)

پایه ی RS نمایشگر  = پایه ۸ آردوینو

پایه ی RW نمایشگر =پایه ی  GND آردوینو

پایه ی E نمایشگر = پایه ۹ آردوینو

پایه ی D4 نمایشگر = پایه ۱۰ آردوینو

پایه ی D5 نمایشگر = پایه ۱۱ آردوینو

پایه ی D6 نمایشگر = پایه ۱۲ آردوینو

پایه ی D7 نمایشگر = پایه ۱۳ آردوینو

پایه ی A نمایشگر = پایه ی ۵ ولت آردوینو

پایه ی K نمایشگر =  پایه ی GND آردوینو


کتابخانه دماسنج عقربه‌ای آردوینو


همانطور که می‌دانید برای راه اندازی هر پروژه‌ای در برد آردوینو نیاز به کتابخانه داریم. در پروژه دماسنج عقربه‌ای آردوینو از ۳ کتابخانه برای ماژول DHT و نمایشگر LCD و سرو موتور Servo Motor استفاده می‌کنیم. به ترتیب در زیر دستورات استفاده از کتابخانه‌ها به همراه لینک دانلود آخرین نسخه از دایرکتوری دانشجو کیت را ضمیمه کرده‌ام. چنانچه روش نصب کتابخانه در برد آردوینو را نمی‌دانید. از آموزش نصب کتابخانه در برد آردوینو که قبلا توسط یکی دیگر از اسپارکرها نوشته شده است، مراجعه کنید.

کتابخانه ی ماژول دما رطوبت (دانلود کتابخانه ماژول DHT)

کتابخانه ی نمایشگر LCD  (دانلود کتابخانه LiquidCrystal)

کتابخانه ی سروو موتور  (دانلود کتابخانه Servo)


کد آردوینو Arduino


جهت اجرای پروژه کدهای زیر را در کامپایلر آردوینو Arduino IDE وارد کنید. دقت کنید که این کدها فقط برای اسپارکرها نمایش داده می‌شود.

مهمان گرامی، جهت دسترسی به کدهای این پروژه، اسپارکر پلاس شوید.


وسایل مورد نیاز


ماژول دما رطوبت

سروو موتور

نمایشگر LCD 

برد آردوینو

شلید پروتوتایپ

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود داشت می‌توانید از همین طریق اطلاع رسانی کنید.

[php][php]//تعریف پین ها#define sensorPin 8#define ledPin 9int led=0;unsigned long currentMillis,sec;void setup () {pinMode (ledPin, OUTPUT);Serial.begin (9600);}void loop () {//شرط فعال شدن ماژول برای دفعه اولif (digitalRead(sensorPin) == 1){delay(10);Serial.println("first time!");currentMillis = millis();sec = millis();//منتظر برای دو ثانیهwhile (sec - currentMillis < 2000){//شرط فعال شدن ماژول برای دفعه دومif (digitalRead(sensorPin) == 1){Serial.println("second time!");digitalWrite(ledPin, led=!led);delay(10);break;}sec = millis();}}}[/php] [css autolinks="false" classname="myclass" collapse="false" firstline="1" gutter="true" highlight="1-3,6,9" htmlscript="false" light="false" padlinenumbers="false" smarttabs="true" tabsize="4" toolbar="true" title="example-filename.php"]your code here[/css] [code lang="js"]your code here[/code] [sourcecode language="plain"]your code here[/sourcecode]