فهرست مطالب:
- مرحله 1: ایجاد مدار الکترونیکی
- مرحله 2: راه اندازی Pin Planner
- مرحله 3: کد Verilog
- مرحله 4: بارگذاری کد Verilog
تصویری: FPGA Cyclone IV DueProLogic Control Servo Motor: 4 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
در این آموزش ، ما قصد داریم کد Verilog را برای کنترل سرو موتور بنویسیم. سرو SG-90 توسط Waveshare تولید می شود. هنگام خرید سروو موتور ، ممکن است یک برگه داده دریافت کنید که شامل ولتاژ کار ، حداکثر گشتاور و مدولاسیون عرض پالس (PWM) و غیره است. با این حال ، FPGA DuePrologic ولتاژ ورودی 3.3 ولت را فراهم می کند که در آن ولتاژ عملکرد سرو SG -90 5V - 7V است. در صورت عدم وجود نیروی الکتریکی ، من PWM کالیبره شده خود را لیست می کنم تا بتوانم سروو موتور را با موفقیت بچرخانم.
وظیفه ما: موتور سروو با مدت 5 ثانیه به جلو و عقب می چرخد
منوی کامل:
مرحله 1: ایجاد مدار الکترونیکی
مرحله 2: راه اندازی Pin Planner
روی "شروع تجزیه و تحلیل تخصیص ورودی/خروجی" کلیک کنید تا بررسی کنید که آیا برنامه ریز پین به درستی تنظیم شده است. در غیر این صورت ، باید همه نام پورت ها را خودتان وارد کنید.
مرحله 3: کد Verilog
ما یک تایمر "servo_count" ایجاد می کنیم. هنگامی که "servo_A" بالا باشد ، PWM 1.5 میلی ثانیه است و بنابراین سروو در 120 درجه قرار دارد. در مقابل ، وقتی "servo_A" پایین باشد ، PWM 0.15ms است و بنابراین سروو در 0 درجه باقی می ماند.
اختصاص XIO_2 [3] = سروو_پالس ؛ // برای V '
reg [31: 0] servo_count؛
شروع اولیه
servo_count <= 32'b0؛
servo_A <= 1'b0؛
پایان
همیشه @(posedge CLK_66)
شروع
servo_count <= servo_count + 1'b1؛
if (servo_count> 400000000) // چرخه ساعت 66 مگاهرتز ، 1/66M * 400000000 ~ 5 ثانیه
شروع
servo_A <=! servo_A؛
servo_count <= 32'b0؛
پایان
پایان
reg [31: 0] ex_auto؛
شروع اولیه
ex_auto <= 32'b0؛
servo_auto <= 1'b0؛
پایان
همیشه @(posedge CLK_66)
شروع
if (servo_A == 1'b1)
شروع
ex_auto <= ex_auto + 1'b1؛
اگر (ex_auto> 100000) // چرخه ساعت 66 مگاهرتز ، این PWM 1.5 میلی ثانیه است ، سروو به 120 درجه می چرخد
شروع
servo_auto <=! servo_auto؛
ex_auto <= 32'b0؛
پایان
پایان
if (servo_A == 1'b0)
شروع
ex_auto <= ex_auto + 1'b1؛
اگر (ex_auto> 10000) // چرخه ساعت 66 مگاهرتز ، این PWM 0.15 میلی ثانیه است ، سروو به 0 درجه می چرخد
شروع
servo_auto <=! servo_auto؛
ex_auto <= 32'b0؛
پایان
پایان
پایان
مرحله 4: بارگذاری کد Verilog
روی "شروع گردآوری" کلیک کنید. اگر هیچ پیام خطایی نمایش داده نشد ، برای تکمیل راه اندازی سخت افزار به "Programmer" بروید. به یاد داشته باشید که در صورت لزوم فایل pof را در "Change file" به روز کنید. برای بارگذاری کد ، روی "شروع" کلیک کنید.
پس از همه ، شما باید ببینید که سرو موتور به صورت دوره ای می چرخد.
توصیه شده:
FPGA Cyclone IV DueProLogic دوربین رزبری پای را کنترل می کند: 5 مرحله
FPGA Cyclone IV DueProLogic دوربین رزبری پای را کنترل می کند: با وجود اینکه FPGA DueProLogic به طور رسمی برای آردوینو طراحی شده است ، ما FPGA و Raspberry Pi 4B را قابل انتقال می کنیم. سه کار در این آموزش اجرا می شود: (الف) همزمان دو دکمه را فشار دهید FPGA برای چرخاندن زاویه
FPGA Cyclone IV DueProLogic - دکمه فشار و LED: 5 مرحله
FPGA Cyclone IV DueProLogic - Push Button & LED: در این آموزش ، ما قصد داریم از FPGA برای کنترل مدار LED خارجی استفاده کنیم. ما قصد داریم کارهای زیر را پیاده سازی کنیم (الف) از دکمه های فشار روی FPGA Cyclone IV DuePrologic برای کنترل LED استفاده کنید. (B) فلش LED روشن & amp؛ به صورت دوره ای آزمایش آزمایشی ویدئو
بازی Arduino Cyclone: 5 مرحله (همراه با تصاویر)
بازی آردوینو سیکلون: من هرگز بازی واقعی طوفان بازی نکرده ام اما ایده بازی با زمان واکنش ما را دوست دارم. من یک بازی کوچک طراحی کردم. این شامل 32 LED است که یک دایره را تشکیل می دهند ، چراغ های LED یکی پس از دیگری به عنوان رهگیر LED روشن می شوند. هدف این است که یک دکمه را فشار دهید
SERVO MOTOR CONTROL با استفاده از WIFI و BLYNK: 5 مرحله
SERVO MOTOR CONTROL با استفاده از WIFI و BLYNK: سلام بچه ها ، در این قسمت آموزشی ، بیاموزید که چگونه می توان حرکت سروو موتور را از طریق WiFi با استفاده از Node MCU و Blynk App کنترل کرد
Cyclone (بازی LED آردوینو): 6 مرحله (همراه با تصاویر)
Cyclone (Arduino LED Game): در این آموزش ، من به شما یاد می دهم که چگونه یک بازی LED با کد یا تجربه بسیار کمی ایجاد کنید! من مدتی بود که این ایده را داشتم و سرانجام شروع به ایجاد آن کردم. این یک بازی سرگرم کننده است که همه ما را به یاد بازی های آرکید می اندازد. آموزش های دیگری نیز وجود دارد