اگر آموزشهای قبلی ما را خونده باشین و یا خودتون پروژهای انجام داده باشین که در اون از LCD کاراکتر استفاده کرده باشین حتما با مشکل راهاندازی LCD و دردسرهای سیم کشی بین LCD و آردوینو Arduino مواجه شدین. امروز در دیجی اسپارک میخواهیم شیلد LCD و KEYPAD آردوینو Arduino را بهتون معرفی کنیم که با استفاده از اون در پروژههاتون، دیگه دردسر راهاندازی LCDهای کاراکتری را ندارین.در ادامهی آموزش با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید.
معرفی LCD KEYPAD Shiled آردوینو
این شیلد یکی از معروف ترین شیلدهایی که تا به حال برای آردوینو Arduino عرضه شده. در این شیلد یک عدد LCD کاراکتری ۲*۱۶ به همراه ۶ عدد تاچسوییچ تعبیه شده . پینهای شماره ۴ ، ۵ ، ۶ ، ۷ ، ۸ ، ۹ و ۱۰ برروری آردوینو Arduino برای برقراری ارتباط و ارسال دیتا میان LCD و آردوینو Arduino استفاده میشه و فقط یک پین آنالوگ شماره A0 برای خواندن ۶ عدد تاچسوییچ قرار گرفته بر روی شیلد استفاده میشه. شیلد LCD از تنظیم کانتراست پشتیبانی میکنه و بکلایت LCD هم به طور پیشفرض روشن است.
طراحی خوب این شیلد Shield باعث شده که به راحتی بتونین سنسورها، موتورها و …. را به راحتی به مابقی پینهای آردوینو Arduino متصل کنین و اطلاعات آنها را بر روی LCD مانیتور و توسط تاچسوییچها عملیات لازم را بر روی آنها انجام بدین. نمایش اطلاعات بر روی LCD و دیباگ کردن برنامه هنگامی که کامپیوتر در درسترس ندارین خیلی میتونه مفید باشه و این شیلد نیز برای انجام این کار بسیار مناسب است.
مشخصات شیلد LCD KEYPAD arduino
- ولتاژ کاری ۵ ولت DC
- ۵ عدد کلید برای کنترل منو و …
-
کلید RST برای ریست کردن آردوینو
- یک عدد مولتیترن برای تنظیم کانتراست LCD
- قابلیت دسترسی به I/O های آردوینو از روی شیلد
- ابعاد ۸۰*۵۸ میلیمتر
- قابلیت کنترل بکلایت
پینهای shiled lcd
- پین D4 تا D7 به منظور انتقال دیتا استفاده میشود.
- پین D8 برای انتخاب رجیسترها
- پین D9 برای فعال کردن LCD
- پین D10 برای کنترل بکلایت استفاده میشه به طوری که در برنامه اگر شما پین شماره ۱۰ آردوینو را در وضعیت HIGH قرار دهید بکلایست LCD روشن میشود و در صورتی که در برنامه پین شماره D10 را در وضعیت LOW قرار دهید ، LCD خاموش میشود.
معرفی ماژول SRF05
رنج اندازه گیری : حداقل cm4 و حداکثر ۴ متر
ولتاژ مورد نیاز و جریان مصرفی : ۵ ولت – ۴ میلی آمپر
پایه ها : GND – VCC – Trig – Echo – Out
راه اندازی ماژول :
مد ۱ :
۱) در این حالت ما ابتدا یه پالس با زمان ۲۰ میکرو ثانیه به پایه Trig میدهیم.
۲) و بعد ماژول SRF05 پالس به سمت محیط ارسال میکند.
۳) و بعدش ما پالسی از پایه Echo دریافت میکنیم و با محاسبه طول این پالس و ضرب کردن در مقادیری…، فاصله SRF05 رو تا مانع پیدا میکنیم.
- اگه طول پالسی که دریافت کردیم از ۳۰ میلی ثانیه بیشتر شد یعنی مانعی جلوی ماژول نیست.(تو برنامه نویسی تون بهتره لحاظش کنید.)
- طول پالسی که دریافت میکنیم بین ۱۰۰ میکرو ثانیه تا ۲۰ میلی ثانیه هستش.
- پایه Out هم به جایی وصل نیست……به جایی وصلش نکنید یه وقت…..بزارید بدون اتصال بمونه.
مد ۲ :
۱) پایه Out به زمین وصل میشه.
۲) پایه Echo بدون اتصال میمونه.
۳) تو مد ۱ ما به پایه Trig یه پالسی میدادیم و یه پالسی از پایه Echo میگرفتیم…..اما تو این مد پایه Echo رو بدون اتصال میزاریم بمونه…..و پالسمون رو به Trig میدیم و پالس رو هم از Trig دریافت میکنیم.
وسایل مورد نیاز :
- آردوینو uno – یک عدد — خرید از فروشگاه
- شیلد lcd – یک عدد — خرید از فروشگاه
- srf05 – یک عدد — خرید از فروشگاه
کد های زیر رو روی برد خودتون آپلود کنید و بعد از نتیجه لذت ببرید.
#include <LiquidCrystal.h> LiquidCrystal lcd(8, 9, 4, 5, 6, 7); String x; void setup() { Serial.begin(9600); pinMode(10, OUTPUT); digitalWrite(10 , HIGH); lcd.begin(16, 2); lcd.setCursor(0, 1); lcd.print("**digispark.ir**"); pinMode(2, OUTPUT);//TRIG pinMode(3, INPUT);//ECHO } void loop() { double cm,duration; digitalWrite(2, HIGH); delayMicroseconds(20); digitalWrite(2, LOW); duration = pulseIn(3, HIGH); cm = duration / 29 / 2; x = "CM : " + String(cm) + " "; lcd.setCursor(0, 0); lcd.print(x); Serial.println(x); delay(200); }
با سلام مطلبتون واقعا مفید بود میخاستم بگم که اگه به جای ال سی دی بخام به صورت صوتی وجود چیزی را تشخیص دهم باید چیکار کنم لطفا راهنمایی کنین.
با سلام
ضمن تشکر از توجه شما، منظورتان را متوجه نمیشوم. لطفا دقیقتر توضیح دهید. یعنی بجای آلتراسونیک از سنسور دیگری استفاده کنید؟
نه. در این نمونه ای که شما ساختید سنسور اولتراسونیک وجود چیزی یا فاصله را روی ال سی دی نشان میدهد ولی من میخاهم بجای این که روی ال سی دی نشان دهد بصورت صوتی وجود چیزی را بگوید .
سلام مجدد
ایدهی جالبی است. یعنی پس از تشخیص مانع یا جسم، از طریق یک بلندگو اعلام کند؟
بله دقیقاممنون میشم اگر کمک کنین
در این خصوص، سادهترین روش استفاده از بیزر است که اعلام وجود مانع را فقط با یک فرکانس صوتی اعلام کند. اما اگر تنایل دارید پیشرفتهتر و هوشمندانهتر به صورت کلامی اعلام کند، آموزش کنترل اشیا با برد Wemos از طریق صدا با Google Assistant و IFTTT را بررسی کنید، ایده میگیرید.
با سلام
اموزش کنترل اشیا با برد وموس را دیدم ولی نتونستم به نتیجه ای برسم .
راستش من میخام۴ عدد سنسور اولترا سونیک را راه اندازی کنم که هر کدام پس از تشخیص مانع فرمان های صوتی مختلفی رو بگه.
سلام مجدد
اون آموزش برای اینکه ایده بگیرید، پیشنهاد دادم. در این صورت سادهترین راه این است که چهار فایل صوتی ایجاد کنید، سپس روی مموری کارت ذخیره کنید و با استفاده از یک ماژول MP3 شرط گذاری کرده و پس از تشخیص مانع یکی از فایلهای صوتی که صدای انسان است، پخش شوند.
سلام از کابل پرینتر برای اتصال اردوینو به کامپیوتر میشه استفاده کرد
با سلام
بله دقت داشته باشید کابل مخصوص دیتا باشد.
باسلام.بی زحمت عکس شماتیک راه اندازی هم بزارید.ممنون
با سلام
ضمن تشکر از توجه شما، در حال حاضر امکان ایجاد تغییر در پست وجود ندارد. لطفا سوالاتتان را در این خصوص از همین طریق مطرح کنید.
سلام نقشه اتصال ماژول و شیلد را بگذارید لطفا
با سلام و تشکر از شما
متاسفانه برای پستهایی که تاریخ انتشار آنها مربوط به گذشته است، امکان ویرایش وجود ندارد. لطفا هر سوالی دارید از همین طریق مطرح بفرمایید.
سلام تمام محتویات محیط برنامه رو حذف کنم بعد این کد رو اپلود کنم
با سلام
بله کد را کامل به نرم افزار آردوینو انتقال داده و کامپایل کنید.
اتصالات رو لطف می کنید بگید من این پروژه رو برای طرح جابر میخوام ممنون میشم کمک کنید با تشکر
با سلام
اتصالات در متن آموزش نوشته شده است.
پایه تریگر سنسور به پایه ۲ دیجیتال آردوینو و پایه اکو به پایه ۳ دیجیتال آردوینو متصل شده است.
سلام میشه اتصالات رو بگید و برای برنامه نویسی باید کد های داخل محیط برنامه نویسی رو پاک کنم؟ بعد این کد هارو اپلود کنم و در اخر اینکه میشه از کابل پرینتر برای برنامه نوییی استفاده کرد
با سلام
کاربر گرامی تمامی سوالات قبلی شما پاسخ داده شده است. همچنین در نظر داشته باشید سوالات با اولویت و در سریعترین زمان ممکن پاسخ داده خواهد شد. لذا از ارسال پیام های پی در پی خودداری نمایید.
سلام پس پایه های ال سی دی به چه صورت است
سلام
در خصوص راه اندازی ال سی دی به آموزش زیر مراجعه کنید.
آموزش راه اندازی ۳ مدل ال سی دی کاراکتری LCD با آردوینو Arduino
سلام من شیلد ال سی دی رو با سیم جامپر نصب کردم التراسونیک هم نصب کردم و ال سی دی صفحه خالی نمایش میده چیکار کنم
با سلام
از کدام مدل ال سی دی استفاده میکنید؟
ال سی دی با کیپد مخصوص اردوینو باتوجه به اینکه من اتصالات رو به این طریق انجام دادم:
پایه اکو به پایه ۳ سمت راست اردوینو
پایه ی تریگر به پایه ی ۲ سمت راست اردوینو
و پایه های ال سی دی هم همون طوری که رو اردوینو قرار می گیره با سیم جامپر وصل کردم
و اینکه فقط کدی که داخل این اموزش هست اپلود کنم
یا اینکه اگر این اتصالات غلطه خواهشا کل اتصالات رو بگید و بگید که کدوم کد هارو اپلود کنم ممنون
با سلام
در خصوص استفاده از ال سی دی طبق آموزش زیر اتصالات را انجام دهید و در صورت برخورد به مشکل در پست مربوط به ال سی دی عنوان کنید تا سریعا رفع عیب شود.
آموزش راه اندازی ال سی دی
سلام من کتابخانه liquid crictal , DFR-LCD-CEYPADرو کامپایل کردم و مدار کار نمیکنه میشه اتصالات رو کامل بگید من از این دو تا مقاله که گفتید چیزی نفهمیدم
با سلام
چه پروژه ای اجرا شده است؟ توضیحات کامل به همراه ارور دریافتی را ارسال کنید تا بررسی شود.
سلام . خسته نباشید
من راه اندازی کزدم ولی ال سی دی فقط مربع نشون میده ودلیلش چی میتونه باشه ؟
با سلام
کتابخانه مورد استفاده را تعویض کنید. بخشی از آن با ورژن نرم افزار و یا بردشما سازگاری ندارد. لطفا بررسی و نتیجه را از همین طریق اعلام کنید.
ممنونم مطلب مفیدی بود برام. از شما سپاسگزارم
با سلام
از توجه شما ممنونم.
باسلام بنده قصد ساخت یک هد اتوفوکوس را دارم . میخواستم ببینم دوستان چه پیشنهادی دارن . نقطه aباید تحت هر شرایطی ثابط بماند . با استپ موتور و درایو و اردوینو . اگر دوستان اهل فن بتوانند کمک کنند ممنون میشم
با سلام
کاربر گرامی ضمن تشکر از شما، از دوستانی که در این زمینه تخصص و اطلاعاتی دارند، تقاضا میکنم در بحث شرکت کنند.