کتاب یادگیری الکترونیک به زبان ساده با Arduino
کتاب یادگیری الکترونیک به زبان ساده با Arduino نوشتهی Jody Culkin و Eric Hagan، برای دانشآموزان الکترونیک و همچنین علاقهمندانی که حتی اطلاعات زیادی درباره الکترونیک ندارند، مناسب بوده و ضمن معرفی آردوینو، از آن به عنوان بهانهای برای آموزش مباحث و قطعات الکترونیک استفاده میشود.
Arduino (آردوینو) یک میکروکنترلر منبع باز است که برای ساخت سختافزارهایی که با اشیاء یا محیط تعامل داشته باشند، طراحی شده است. آردوینو را میتوان برای گرفتن ورودی از تعدادی سوییچ و حسگر، و کنترل لامپها، موتورها و سایر خروجیهای فیزیکی به کار گرفت. آردوینو میتواند پارامترهایی مانند نور محیط، کلید و... را به عنوان ورودی دریافت کرده و پس از پردازش، خروجیهایی مانند روشن کردن یک وسیله برقی، تغییر رنگ LEDها و... را ارائه دهد.
Arduino در ابتدا توسط معلمانی توسعه داده شد که با استفاده از آن، ایجاد اشیاء و محیطهای تعاملی را برای دانشآموزان خود که مهندس نبودند، امکانپذیر کردند. از آنجا که Arduino اولیه در سال 2005 در دسترس قرار گرفت، تخمین زده میشود که بیشتر از 1 میلیون دستگاه به فروش رفته است. طراحان، معلمان، مهندسان و دانشآموزان، با Arduino انواع پروژههایی را ساختهاند که دنیای اطراف را درک کرده و به آن پاسخ میدهند.
برای برنامهنویسی این برد، یک محیط یکپارچه توسعه نرمافزار (IDE) به نام Arduino IDE ارائه شده که در آن میتوان از فایلهای نمونه استفاده کرده یا کدهایی را براساس پروژه خود نوشت.
فهرست مطالب
مقدمه
فصل اول: معرفی Arduino
محاسبات فیزیکی
سخت افزار منبع باز چیست؟
مدلسازی
به چه چیزهایی نیاز خواهم داشت و آنها را از کجا به دست بیاورم؟
بخشها و ابزارها
لیست قطعات
یک نکته درباره LEDها
ابزارها
فصل دوم: Arduino شما
بخشهای مختلف یک Arduino
Arduino با جزئیات
دکمه reset
پورت USB
رگولاتور ولتاژ
پورت power (تغذیه)
LEDهای درون ساخت
LED نشان دهنده وضعیت روشن
پایههای دیجیتال ورودی / خروجی
پایههای TX/RX
ATmega328P، تراشه مشکی
پایههای Power و Ground
پایههای آنالوگ
متصل کردن Arduino به کامپیوتر
تغذیه کردن Arduino از یک منبع تغذیه
مرتب کردن قطعات
فصل سوم: کار با مدار
مدار: ساختن بلوکی از الکترونیک
مدار چیست؟
چرا مدارات را میسازیم؟
چه چیزهایی یک مدار را میسازند؟
خطوط هادی
قطعات
از کجا شروع کنیم؟
شماتیک
چرا یادگیری نحوه خواندن یک شماتیک مهم است؟
نمودار مدار شما: شماتیک
ترسیم کردن یک شماتیک
استفاده از یک برد بُرد
توضیحاتی درباره برد بُرد
متصل کردن
ساخت یک مدار
راهنماییهای قدم به قدم مدار
نگاهی به باتری
تغذیه مدار ما: الکتریسیته
تغذیه
زمین
اشکال زدایی مدار
آیا تغذیه و زمین به برد بُرد وصل شده اند؟
آیا LED به طور صحیح وصل شده است؟
آیا از مقاومت صحیحی استفاده کرده ام؟
حلقههای اشکال زدایی مدار: پیوستگی
مولتی متر
مروری بر مولتی متر
اجزای یک مولتی متر: درجه گردان
اجزای یک مولتی متر: میلهها (probes)
اجزای مولتی متر: پورتها
استفاده از مولتی متر
تنظیم کردن مولتی متر برای تست پیوستگی
تنظیم کردن مولتی متر برای تست کردن پیوستگی
تست کردن پیوستگی
ادامه اشکال زدایی مدار
تست کردن پیوستگی در یک مدار
خلاصه
فصل چهارم: برنامه ریزی Arduino
Arduino، مدارها و کد: کنار هم قرار دادن همه چیز
IDE چیست؟
چه چیزی در Arduino IDE وجود دارد؟
کد چیست؟
Arduino IDE: نگاه اول
دانلود کردن Arduino IDE: شروع به کار
روش نصب روی Mac
روش نصب روی Windows
متصل کردن Arduino به کامپیوتر
Arduino IDE: چه چیزی در این محیط است؟
پیکربندی IDE
مشخص کردن نسخه سخت افزار
مشخص کردن پورت مورد استفاده
انتخاب پورت در Mac
انتخاب پورت در Windows
آشنایی با پنجره کدنویسی
Sketch: واحد پایه برنامه نویسی Arduino
باز کردن یک sketch نمونه
ذخیره کردن sketch
ذخیره سازی مستمر
آپلود کردن یک sketch به آردوینو
گام ا: بررسی sketch
گام 2: آپلود کردن sketch
آپلود کردن ادامه مییابد: نوار وضعیت و پنجره پیغام
اجرای LEA4_Blink
اشکال زدایی: اگر LED چشمک نزد، چه کاری انجام دهم؟
مروری بر LEA4_Blink
توضیحات: به سایرین امکان دهیم فکر ما را بفهمند
توابع ()setup و ()loop
()setup و ()loop متصل به هم
مثال ها: چگونه ()setup و ()loop به پروژهها اعمال میشوند؟
()setup: تنظیم اولیه وضعیت
()setup : دستورات یک بار اجرا میشوند
نگاهی به ()loop : دستورات چندین بار اجرا میشوند
نگاهی به تابع ()loop : توابع ()digitalWrite و ()delay
شماتیکی از Arduino
شماتیک مدار شما
ساخت مدار پایه
متصل کردن Arduino به یک برد بُرد: اولین گام
ساخت گام به گام مدار: متصل کردن پایه 13 و مقاومت
ساخت گام به گام مدار: متصل کردن LED
ساخت گام به گام مدار: متصل شدن به کامپیوتر
چراغ سیگنال SOS: ساخت زمان بندی پیچیده تر
ذخیره کردن sketch و تغییر نام
بازبینی کدها: چه تغییری باید انجام دهیم؟
تغییر تابع ()loop در فایل SOS
تمام خطوط کد تابع ()loop
خلاصه فصل
فصل پنجم: الکتریسیته و اندازه گیری
ولتاژ، جریان و مقاومت چیستند؟ چگونه با هم ارتباط دارند؟
درک الکتریسیته
اندازه گیری خصوصیات الکتریکی با مولتی متر
ساخت گام به گام مدار
اشکال زدایی مدار
الکتریسیته: مرور
الکتریسیته چگونه رفتار میکند؟
جریان AC و DC
درک کردن الکتریسیته: مقایسه با مخزن آب
ولتاژ: پتانسیل
مقدار ولتاژ برای یک Arduino چقدر است؟
بررسی ولتاژ
اندازه گیری ولتاژ
تست کردن ولتاژ قطعات
افت ولتاژ
جریان
جریان در مدار
محدودیت جریان برای یک Arduino چیست؟
اندازه گیری جریان
تنظیم کردن مولتی متر
مقاومت: محدود کردن جریان
اندازه گیری مقاومت با یک مولتی متر
ولتاژ، جریان، مقاومت: مرور
چگونه الکتریسیته روی قطعات ما اثر میگذارد؟
ولتاژ
جریان
مقاومت
چگونه قطعات ما با یک تغییر در خصوصیات الکتریکی تحت تأثیر قرار میگیرند؟
چگونه ولتاژ، جریان و مقاومت با هم ارتباط دارند؟ قانون اُهم
قانون اُهم در یک مدار
اعمال کردن قانون اُهم
چیدن قطعات در یک مدار
قطعات در چیدمان سری و موازی
روش موازی
روش سری
یک مدار با دو LED به روش موازی
اضافه کردن دومین LED به مدار
اندازه گیری ولتاژ LEDها در روش موازی
مولتی متر در روش موازی
قطعات در روش موازی: این روش چه تأثیری روی ولتاژ میگذارد؟
ساختن یک مدار با دو LED به روش سری
اندازه گیری ولتاژ قطعات در روش سری
قطعات در روش سری: این روش چه تأثیری روی ولتاژ میگذارد؟
مولتی متر در روش سری
خلاصه فصل
فصل ششم: سوییچها، LEDها و سایر قطعات
تعامل با کاربر
مروری بر ورودیها و خروجیهای دیجیتال
سوییچ ها
ورودی دیجیتال: اضافه کردن یک دکمه
درک شماتیکهای پیچیدهتر
ساخت مدار دکمه
اضافه کردن دکمه
متصل کردن دکمه به تغذیه، یک مقاومت و زمین
متصل کردن دکمه به یک پایه Arduino و آپلود کردن یک sketch
باز کردن، ذخیره کردن، بررسی و آپلود sketch
روشن و خاموش کردن LED
نگاهی به sketch: متغیرها
مقداردهی اولیه متغیرها
یک متغیر چیست؟
اعلان کردن متغیرها
نام متغیر
مقدار متغیر
نوع متغیر
توصیف کنندههای متغیر
تابع ()setup برای LEA6_Button
ورودی دیجیتال
چرا سه روش مختلف برای بیان یک حالت به کار وجود دارد؟
نگاهی به sketch: عبارات شرطی
یک عبارت شرطی چیست؟
بلوک else
اضافه کردن یک بلندگو و کدنویسی آن
کدنویسی بلندگو
کدنویسی ()setup
کدنویسی ()loop
آرگومان
اضافه کردن دو دکمه دیگر و کدنویسی آنها
ویرایش LEA6_2_tonebuttons
تغییر کدهای تابع ()setup
تغییر کدهای تابع ()loop
اضافه کردن دکمه سوم
ویرایش فایل LEA6_3_tonebuttons
تغییر تابع ()setup
تغییر تابع ()loop
دکمه چگونه کار میکند؟
بلندگو چگونه نُتها را پخش میکند؟
فصل هفتم: مقادیر آنالوگ
زندگی چیزی بیشتر از صفر و یک است!
چرا من به شما چگونگی استفاده کردن از سنسورها و اطلاعات آنالوگ را توضیح میدهم؟ و منظور دقیق من از آنالوگ چیست؟
مدار پتانسیومتر
پایههای ورودی آنالوگ Arduino
ملاقات با پتانسیومتر
مدار پتانسیومتر، قدم به قدم
اضافه کردن پتانسیومتر
تاریک کردن لامپ
فایل sketch چه نقشی در مدار شما ایفا میکند؟
گام 1: تغذیه کردن Arduino
گام 2: تغذیه کردن پتانسیومتر
گام 3: پتانسیومتر ولتاژ را تغییر میدهد
گام 4: Arduino ولتاژ را میخواند
گام 5: آردوینو مقدار را تبدیل میکند
گام 6: آردوینو مقدار را به LED ارسال میکند
گام 7: LED روشن میشود
فایل LEA7_AnalogInOutSerial
بخش مقداردهی فایل
تابع ()setup
تابع ()loop
ورودی آنالوگ: مقادیر پتانسیومتر
چگونه تغییر مقاومت پتانسیومتر روی مقدار خروجی از پایه A0 اثر میگذارد؟
ورودی آنالوگ در کدنویسی: ()analogRead
تنظیم کردن مقادیر: تابع ()map
نوشتن یک مقدار در یک پایه: تابع ()analogWrite
تفاوت توابع آنالوگ و دیجیتال چیست؟
کمی فکر کنید!
مقادیر آنالوگ به عنوان خروجی: PWM
پایههای PWM کجا هستند؟
ارتباط سریال
چرا نیاز به دیدن اطلاعات ورودی و خروجی Arduino روی کامپیوتر خود داریم؟
سریال به چه معناست؟
استفاده از پنجره Serial Monitor
نگاهی به کدهای سریال
ارسال کلمات به Serial Monitor: رشته ها
چاپ کردن در Serial Monitor
آخرین کد تابع ()loop : تابع ()delay
خلاصه فایل LEA7_AnalogInOutSerial
اضافه کردن بلندگو
تغییر کدهای فایل
اضافه کردن مقاومت نوری (photoresistor-photocell)
چرا کد تغییر نکرد؟
خواندن خروجی سریال
فصل هشتم: Servo Motor
تکان دادن پرچم ها
مروری بر دادههای آنالوگ
قطعات یک servo motor
ساختن مدار servo به طور گام به گام
آماده سازی servo motor
متصل کردن servo motor
متصل کردن آردوینو به کامپیوتر و دانلود کردن فایل Sweep
تکان دادن پرچم
کدهای مقداردهی
کدهای تابع ()setup
کدهای تابع ()loop
حلقه تکرار for چیست؟
یک حلقه تکرار for چگونه کار میکند؟
عملگرها
عملگرهای مقایسه ای
عملگرهای ترکیبی
حلقه تکرار for در فایل sketch ما
اضافه کردن تعامل: تکان دادن پرچم
اضافه کردن یک پتانسیومتر به مدار به طور گام به گام
هنگام استفاده کردن از یک پتانسیومتر، sketch چگونه تغییر میکند؟
کدهای مقداردهی
کدهای تابع ()setup
کدهای تابع ()loop
حرکت دادن دو پرچم: اضافه کردن یک servo motor دیگر
فایل LEA8_2_servos، اولین نگاه
کدهای مقداردهی
کدهای تابع ()setup
کدهای تابع ()loop
ایجاد یک تابع سفارشی
فراخوانی کردن یک تابع سفارشی
درون تابع ()turnServos
عملگرهای منطقی
تابع ()turnServo و عملگرهای منطقی
فصل نهم: ساختن پروژهها
مدیریت پروژه
نمای کلی پروژه
تست کردن توسط کاربر
چند قطعه مفید
سنسورها
تشخیص فاصله و حرکت
مقاومتهای حس کننده فشار
سایر سنسورها
عاملها و موتورها
موتورهای DC
موتورهای پلهای (stepper motors)
Solenoid
انواع پروژه ها
مکانیزه کردن خانه
ربات ها
پروژههای پوشیدنی
پروژههای هنری
سایر نسخههای برد Arduino
Arduino 101
Arduino YUN
Lilipad
ضمیمه: خواندن کد مقاومتها
شناسائی مقاومتها با توجه به نوارهای رنگی آنها
جهت مقاومت
نمودار رنگ مقاومت
رمزگشایی مقاومت
بررسی نوارهای رنگی روی یک مقاومت دیگر
نگاه کردن مجدد به نمودار رنگها
مطالب مرتبط
تگها
مطالب پربیننده
- چه کسانی می توانند نامخانوادگیشان را تغییر دهند
- روزانه چقدر پروتئین مصرف کنیم؟
- خواص شگفتانگیز کیوی را بشناسید
- فراخوان دومين كنگره بين المللی راهكارهای گسترش فرهنگ غدير و ترويج نهج البلاغه
- ۳ نوشیدنی مفید برای سالمندان
- نکاتی مهم درباره جوشهای صورت
- علائم بیش فعالی در دخترها و پسرها را بشناسید
- میوه ای برای تقویت سیستم ایمنی بدن
- گیاهی برای دفع سنگ کلیه
- اربعین؛ پلی به سوی وحدت جهانی
- چالشهای ازدواج در دوران پیری
- اذن پدر برای ازدواج دختر لازم است یا خیر؟
- معرفی سوغات و صنایع دستی مازندران
- چگونه عطر مناسب بخریم؟
- زندگی نامه مسعود پزشکیان
- رابطه زناشویی برنده و بازنده ندارد
- درباره دوران بحرانی نوجوانی
- بازار کرمان با قدمت ۶۰۰ سال
- معرفی موزه هنرهای معاصر تهران؛ بازتابی از هنر ایران و جهان
- مصرفگرایی و ویرانی زندگی
- پاسخ به سوالات رایج درباره مصرف شیر
- معرفی جنگل فندقلو؛ بهشتی مینیاتوری در اردبیل
- درباره سن پیری بیشتر بدانیم
- اهمیت خواب را جدی بگیرید
- معرفی مسجد شیخ لطف الله، اثری شگفت انگیز از دوران صفویه
- پناهگاه سکوت
- نحوه خوابیدن به خواستههای درونی
- مضرات سیگار از آسیبهای پوستی تا تهدید سلامتی
- در مورد کف پای صاف و باورهای قدیمی
- چگونه با کودکان چاق تعامل داشته باشیم
- قوانین کلاس و مدرسه
- قالب آماده و زیبای پاورپوینت(15)
- ۵ فیلم که همه زنان ایرانی باید تماشا کنند
- شعار سال ۱۴۰۱ «سال تولید، دانشبنیان و اشتغالآفرین»
- قالب زیبای پاورپوینت برای ارائه پروپوزال و دفاع رساله دکترا
- قالب پاورپوینت کادر دار زیبا
- پورنوگرافی چیست و چه اثری بر مغز و رابطه جنسی دارد؟
- قالب پاورپوینت گرافیکی و طرح دار زیبا
- قالب پاورپوینت گرافیکی زیبا
- رنگ چشم هایتان درباره شما و اجدادتان چه می گوید؟
- نمونه تدریس درس اول هدیه آسمان پنجم
- قالب پاورپوینت گرافیکی جالب
- اندکی درباره درسپژوهی
- کتاب پسری که جادویی شد
- همه زائران سلطان
- قالب پاورپوینت
- معرفی کتاب
- دوستی با کتاب
- قالب پاورپوینت گرافیکی
- درباره محسن رضایی
- معرفی کتاب
- قیافه و ظاهر واسه متولدین کدوم ماه، خیلی مهمه؟
- درباره امیر کبیر
- کتاب راهنمای کامل Interaction access
- متن کامل دعای جوشن کبیر با ترجمه
- کتاب پیوند زخم خورده
- درباره فخرالدین عراقی
- درباره محسن مهر علیزاده
- کتاب آموزش علیه آموزش
- خلاصه کتاب سواد بصری