فهرست مطالب:
- مرحله 1: ایجاد برنامه در تلفن خود
- مرحله 2: آماده سازی PI
- مرحله 3: ایجاد پروژه خود
- مرحله 4: MyProject.js
- مرحله 5: MyProject در آردوینو
- مرحله 6: سیم کشی
- مرحله 7: همین
تصویری: Raspberry PI & Arduino - Blynk Stepper Control: 7 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
این آموزش به شما نشان می دهد که چگونه یک موتور پله ای را با Arduino ، Raspberry Pi و Blynk Application کنترل کنید.
در پوسته مهره ، برنامه درخواست ها را از طریق پین های مجازی به Raspberry Pi ارسال می کند ، Pi سپس سیگنال HIGH/LOW را به Arduino و Arduino سپس با موتور پله ای سروکار دارد.
من فکر می کنم استفاده از این تقریب راحت تر است زیرا اکثر مردم به کار با آردوینو و نه زیاد با node.js در رزبری پای عادت دارند.
اجزای مورد نیاز برای این کار:
- Raspberry PI (من از Raspberry Pi 3 مدل b استفاده می کنم)
- آردوینو (من از آردوینو نانو استفاده می کنم)
- سرو موتور (من از کنترلر 28BYJ-48 5VDC استفاده می کنم)
- برخی از سیم های بلوز
- منبع تغذیه (5VDC 2A.)
طرح آردوینو و کد Node.js برای بارگیری در دسترس است. فقط فایل ها را جستجو کنید.
مرحله 1: ایجاد برنامه در تلفن خود
Blynk را از AppStore یا GooglePlay بارگیری کنید
برنامه را باز کنید و یک کاربر ایجاد کنید یا با فیس بوک وارد شوید.
- ایجاد یک پروژه جدید
نام پروژه خود را: MyProject
دستگاه را انتخاب کنید: Rasapberry Pi 3 B
نوع اتصال: Wifi (یا اترنت اگر Pi شما به شبکه شما وصل شده باشد)
- روی ایجاد کلیک کنید
ایمیل خود را برای توکن خود بررسی کنید
(به نظر می رسد این 3aa19bb8a9e64c90af11e3f6b0595b3c)
این توکن با برنامه فعلی شما پیوند خورده است. اگر برنامه دیگری انجام دهید ، توکن دیگری تولید خواهید کرد.
در برنامه ابزارک های زیر را اضافه کنید (تصویر را ببینید)
- اضافه کردن 3 دکمه
- 1 LCD اضافه کنید
- دکمه را ویرایش کنید
نام اول را Command1 بگذارید ، پین را به عنوان پین مجازی 1 تنظیم کنید و حالت را به عنوان SWITCH تنظیم کنید
نام دوم را CW بگذارید ، Pin را به عنوان Virtual Pin 2 تنظیم کنید و Mode را به عنوان PUSH تنظیم کنید
نام سوم را CCW بگذارید ، Pin را به عنوان Virtual Pin 3 و Mode را به عنوان PUSH تنظیم کنید
- LCD را ویرایش کنید
پین ها را به عنوان Virtual Pin 4 و Virtual Pin 5 تنظیم کرده و Mode را روی PUSH قرار دهید
مرحله 2: آماده سازی PI
ابتدا ، باید Node.js. را نصب کنید. قبل از به روز رسانی Node.js ، لطفاً نسخه های قدیمی را حذف کنید:
ترمینال را باز کرده و تایپ کنید
sudo apt-get nodejs گره پاکسازی
node.js -ysudo apt -get autoremove
نصب خودکار Node.js افزودن مخازن:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
Node.js را نصب کنید
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install build-essential nodejs -y
پس از نصب Node.js ، Blynk را نصب کنید
sudo npm blynk -library -g را نصب کنید
sudo npm نصب onoff -g
مرحله 3: ایجاد پروژه خود
با تغییر دایرکتوری (دستور cd) به فهرست pi شروع کنید
ترمینال را باز کنید و تایپ کنید:
cd/home/pi/
سپس ، یک دایرکتوری ایجاد کنید که پروژه شما در آن اقامت دارد
mkdir MyProject
دایرکتوری را به MyProject تغییر دهید ، موارد زیر را در ترمینال تایپ کنید
cd MyProject
محتوای فهرست را بررسی کنید (باید خالی باشد). فقط موارد زیر را در ترمینال تایپ کنید
ls
در مرحله بعد ، موارد زیر را تایپ کنید تا توضیحات پروژه شما ایجاد شود (package.json)
npm init
فقط نام پروژه ، نویسنده ، نسخه و غیره را تایپ کنید…
پس از انجام این کار ، کتابخانه Blynk ، کتابخانه onoff و کتابخانه system-sleep را در فهرست پروژه خود نصب کنید. موارد زیر را در ترمینال خود تایپ کنید
npm blynk-library را نصب کنید-ذخیره کنید
npm install onoff -ذخیره کنید
npm install system-sleep-ذخیره کنید
در نهایت ، فایل.js خود را ایجاد کنید (این جایی است که کد شما در آن قرار دارد). موارد زیر را در ترمینال تایپ کنید
nano MyProject.js
پس از اجرای آن دستور ، نانو (ویرایشگر متن ترمینال) باز می شود.
مرحله 4: MyProject.js
در نانو ، خطوط کد زیر را بنویسید
var Blynk = نیاز ('blynk-library')؛
var AUTH = '******************'؛ این کد شماست
var blynk = new Blynk. Blynk (AUTH)؛
var Gpio = نیاز ('خاموش'). Gpio ،
command1 = Gpio جدید (18 ، 'out') ، // به Arduino D2 متصل می شود
commandCW = Gpio جدید (23 ، 'out') ، // به Arduino D3 متصل می شود
commandCCW = جدید Gpio (24 ، 'out') ؛ // به Arduino D4 متصل می شود
var خواب = نیاز ('system-sleep')؛
var v1 = new blynk. VirtualPin (1) ؛ // این دکمه Command1 شما در برنامه است
var v2 = new blynk. VirtualPin (2) ؛ // این دکمه CW شما در برنامه است
var v3 = new blynk. VirtualPin (3) ؛ // این دکمه CCW شما در برنامه است
var v4 = new blynk. VirtualPin (4) ؛ // این خط 1 LCD شما در برنامه است
var v5 = new blynk. VirtualPin (5) ؛ // این خط LCD 2 شما در برنامه است
v1.on ('write'، function (param) // دکمه Command1 را در برنامه بررسی کنید
{
if (param == 1) // اگر دکمه فشار داده شده (که 1 است) ، موارد زیر را انجام دهید
{
v4.write ("اجرا") ؛ // در خط اول LCD "اجرا" را بنویسید
v5.write ("فرمان") ؛ // "خط" را در خط دوم LCD بنویسید
command1.writeSync (1) ؛ // GPIO18 (که متغیر command1 است) را روی 1 (HIGH) تنظیم کنید
خواب (4000) ؛ // 4 ثانیه صبر کنید
command1.writeSync (0) ؛ // GPIO18 (که متغیر command1 است) را روی 0 (پایین) تنظیم کنید
v4.write ("انجام شد") ؛ // در خط اول LCD "Done" را بنویسید
v5.write ("")؛ // "" (هیچ) را در خط دوم LCD بنویسید
v1.write (0) ؛ // 0 را روی دکمه Command1 خود بنویسید ، که آن را به موقعیت OFF بازنشانی می کند
}
});
v2.on ('write'، function (param) // دکمه CW را در برنامه بررسی کنید
{
if (param == 1) // اگر دکمه فشار داده شده (که 1 است) ، موارد زیر را انجام دهید
{
commandCW.writeSync (1) ؛ // GPIO23 (که متغیر commandCW است) را روی 1 (HIGH) تنظیم کنید
}
else if (param == 0) // اگر دکمه فشرده نشده است (که 0 است) ، موارد زیر را انجام دهید
{
commadCW.writeSync (0) ؛ // GPIO23 (که متغیر commandCW است) را روی 0 (پایین) تنظیم کنید
}
});
v3.on ('write'، function (param) // دکمه CCW را در برنامه بررسی کنید
{
if (param == 1) // اگر دکمه فشار داده شده (که 1 است) ، موارد زیر را انجام دهید
{
commandCCW.writeSync (1) ؛ // GPIO24 (که متغیر commandCCW است) را روی 1 (HIGH) تنظیم کنید
}
else if (param == 0) // اگر دکمه فشرده نشده است (که 0 است) ، موارد زیر را انجام دهید
{
commandCCW.writeSync (0) ؛ // GPIO24 (که متغیر commandCCW است) را روی 1 (HIGH) تنظیم کنید
}
});
آن را ذخیره کرده و از نانو خارج شوید
- برای ذخیره CTRL+O
- برای ترک CTRL+X
کار شما با Raspberry Pi تمام شده است.
حالا آن را امتحان کنید تا ببینید آیا خطایی دارد (بیشتر اوقات اشتباهات تایپی است)
برای آزمایش آن ، کافی است موارد زیر را در ترمینال خود تایپ کنید
گره MyProject.js
شما باید خروجی به این شکل داشته باشید
حالت OnOff
اتصال به: blynk-cloud.com 8441
مجوز SSL…
مجاز
مرحله 5: MyProject در آردوینو
خوب ، اکنون ما 2/3 چیز را تکمیل کرده ایم!
اکنون فقط باید مقداری کد برای آردوینو بنویسیم.
- یک طرح جدید آردوینو ایجاد کنید و کد زیر را تایپ کنید.
#عبارتند از
#تعریف STEPS_PER_MOTOR_REVOLUTION 32
#تعریف STEPS_PER_OUTPUT_REVOLUTION 32 * 64 // 2048
// اتصالات پین باید پین 8 ، 9 ، 10 ، 11 متصل باشد
// به راننده موتور In1 ، In2 ، In3 ، In4
// سپس پین ها در ترتیب 1-3-2-4 برای تعیین توالی مناسب در اینجا وارد می شوند
پله کوچک استپر (STEPS_PER_MOTOR_REVOLUTION ، 8 ، 10 ، 9 ، 11) ؛
int Steps2Take؛
int Command1؛
int CommandCW؛
int CommandCCW؛
void setup ()
{
pinMode (2 ، ورودی) ؛
pinMode (3 ، ورودی) ؛
pinMode (4 ، ورودی) ؛
// (کتابخانه Stepper پین ها را به عنوان خروجی تنظیم می کند)
}
حلقه خالی ()
{
Command1 = digitalRead (2) ؛
CommandCW = digitalRead (3) ؛
CommandCCW = digitalRead (4) ؛
if (Command1 == 0)
{
// هیچ کاری نکن
}
دیگری
{
عملکرد ()؛
}
if (CommandCW == 1)
{
small_stepper.setSpeed (700) ؛
small_stepper.step (-1) ؛
تأخیر (1) ؛
}
if (CommandCCW == 1)
{
small_stepper.setSpeed (700) ؛
small_stepper.step (1)؛
تأخیر (1) ؛
}
}
void ExecutionFunction ()
{
مراحل 2 = STEPS_PER_OUTPUT_REVOLUTION / 4 ؛ // چرخش CCW 1/4 دور
small_stepper.setSpeed (700) ؛
small_stepper.step (مراحل 2) // می توانید Steps2Take را با هر مقداری بین 0 تا 2048 جایگزین کنید
تأخیر (500) ؛
مراحل 2 = - STEPS_PER_OUTPUT_REVOLUTION / 4 ؛ // چرخش CW 1/4 دور
small_stepper.setSpeed (700) ؛
small_stepper.step (مراحل 2) // می توانید Steps2Take را با هر مقداری بین 0 تا 2048 جایگزین کنید
تاخیر (2000) ؛
}
کامپایل کنید و در آردوینو خود بارگذاری کنید.
حالا مطمئن شوید که همه چیز را به درستی وصل کرده اید! مرحله بعدی را برای سیم کشی ببینید.
مرحله 6: سیم کشی
Arduino D3 را به RaspberryPi GPIO18 وصل کنید (که در واقع پین 12 است)
Arduino D4 را به RaspberryPi GPIO23 وصل کنید (که در واقع پین 16 است)
Arduino D4 را به RaspberryPi GPIO24 وصل کنید (که در واقع پین 18 است)
Arduino GND را به RaspberryPi GND وصل کنید (پین 6)
Arduino D8 را به Stepper Controller In1 وصل کنید
Arduino D9 را به Stepper Controller In2 وصل کنید
Arduino D10 را به Stepper Controller In3 وصل کنید
Arduino D11 را به Stepper Controller In4 وصل کنید
5VDC را به Arduino ، Raspberry Pi و Stepper Controller وصل کنید
مرحله 7: همین
ویدیو را بررسی کنید ، باید تمام شوید!
ممنون و لذت ببرید!
توصیه شده:
DIY Remote Control Switch Kit by 2262/2272 M4 Bread Board & Relay for Maker: 4 مرحله (همراه با تصاویر)
DIY Remote Control Switch Kit by 2262/2272 M4 Bread Board & Relay for Maker: خانه هوشمند به زندگی ما می آید. اگر می خواهیم خانه هوشمند محقق شود ، به تعدادی سوئیچ کنترل از راه دور نیاز داریم. امروز ما قصد داریم یک آزمایش انجام دهیم ، یک مدار آسان برای یادگیری نظریه سوئیچ کنترل از راه دور انجام دهیم. این طراحی کیت توسط SINONING ROBOT
تطبیق یک گوشی تلفن همراه با تلفن همراه: 7 مرحله (همراه با تصاویر)
انطباق یک گوشی تلفن همراه با یک تلفن همراه: توسط بیل ریو ([email protected]) اقتباس شده برای دستورالعمل ها توسط موس ([email protected]) سلب مسئولیت: روش شرح داده شده در اینجا ممکن است برای شما کارساز نباشد گرفتن. اگر کار نمی کند ، یا اگر چیزی را خراب می کنید ، m نیست
& acirc؛ & ndash؛ & rsquo؛. :: *، طراحی عالی (Microsoft Paint) ، *::. & acirc؛ & ndash؛ & rsquo ؛: 4 مرحله
& acirc؛ & ndash؛ & rsquo؛. ::*، طراحی فوق العاده (Microsoft Paint) ،*::. & acirc؛ & ndash؛ & rsquo ؛: من به شما نشان خواهم داد که چگونه می توانید با استفاده از رنگ مایکروسافت ، یا فقط یک مداد و کاغذ ، یک طراحی عالی بسازید! ! P.S. لطفاً به مسابقه کتاب امتیاز دهید و رای دهید. یک میلیون ممنون
هدست ارزان + تلفن همراه شکسته = & quot؛ SkypeCell & quot ؛: 7 مرحله (همراه با تصاویر)
هدست ارزان + تلفن همراه شکسته = & quot؛ SkypeCell & quot ؛: برای این اولین دستورالعمل ، من یک هک اخیر را که انجام داده ام به شما نشان می دهم. من یک هدست خراب ارزان و یک تلفن همراه شکسته (صفحه ترک خورده) داشتم و برای برقراری تماس نیاز به یک راه حل قابل اعتماد داشتم با اسکایپ … بنابراین من دو مورد آماده برای سطل زباله را با هم ترکیب کردم
آردوینو پروتو شیلد از & quot؛ خانگی & quot؛ موارد (& lt؛ 5 $): 9 مرحله (همراه با تصاویر)
آردوینو پروتو شیلد از & quot؛ خانگی & quot؛ موارد (& lt؛ 5 $): من آردوینو خود را دوست دارم. من را درگیر برنامه نویسی میکروکنترلر کرد. من همچنین از قابلیت توسعه ای که سپرها ارائه می دهند خوشم می آید. Arduino من می تواند یک دقیقه GPS Locatorone باشد و در مرحله بعد به وب متصل شود. همچنین یک کیت وجود دارد که به شما امکان می دهد