
Мазмұны:
2025 Автор: John Day | [email protected]. Соңғы өзгертілген: 2025-01-23 14:50

Бұл оқулықта біз сервоқозғалтқышты басқару үшін Verilog кодын жазамыз. Серво SG-90 Waveshare шығарады. Серво қозғалтқышты сатып алғанда, сіз жұмыс кернеуін, максималды моментті және ұсынылған импульстік ен модуляциясын (PWM) және т.б. көрсететін деректер кестесін ала аласыз. Алайда, FPGA DuePrologic кіріс кернеуін 3,3В қамтамасыз етеді, мұнда SG -90 сервосының жұмыс кернеуі 5В - 7В құрайды. Электр қуатының жетіспеушілігінде мен сервокоторды сәтті айналдыру үшін калибрленген PWM тізімін беремін.
Біздің міндет: Серво қозғалтқышы 5 секунд уақыт ішінде алға -артқа айналады
Толық мәзір:
1 -қадам: Электрондық схеманы құру

2 -қадам: PIN жоспарлаушыны орнатыңыз

Іске қосу жоспарлағышының дұрыс орнатылғанын тексеру үшін «Енгізу -шығару тапсырмасын талдауды бастау» түймесін басыңыз. Әйтпесе, барлық порт атауын өзіңіз импорттауға тура келеді.
3 -қадам: Verilog коды
Біз «servo_count» таймерін жасаймыз. Егер «servo_A» ЖОҒАРЫ болса, PWM - 1,5 мс, сондықтан серво 120 градуста орналасқан. Керісінше, «servo_A» ТӨМЕН болғанда, PWM 0,15 мс құрайды, сондықтан серво 0 градуста қалады.
тағайындау XIO_2 [3] = servo_pulse; // V үшін
reg [31: 0] servo_count;
бастапқы бастама
servo_count <= 32'b0;
servo_A <= 1'b0;
Соңы
әрқашан @(сурет 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;
Соңы
Соңы
рег [31: 0] ex_auto;
бастапқы бастама
ex_auto <= 32'b0;
servo_auto <= 1'b0;
Соңы
әрқашан @(сурет CLK_66)
баста
егер (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;
Соңы
Соңы
егер (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 кодын жүктеңіз


«Компиляцияны бастау» түймесін басыңыз. Егер қате туралы хабар көрсетілмесе, жабдықты орнатуды аяқтау үшін «Бағдарламалаушыға» өтіңіз. Қажет болса, «Файлды өзгерту» ішіндегі pof файлын жаңартуды ұмытпаңыз. Кодты жүктеу үшін «Бастау» түймесін басыңыз.
Ақыр соңында, серво қозғалтқышының мезгіл -мезгіл айналатынын көруге болады.
Ұсынылған:
FPGA циклоны IV DueProLogic бақылаулары Raspberry Pi камерасы: 5 қадам

FPGA циклонының IV DueProLogic бақылауы Raspberry Pi камерасы: FPGA DueProLogic ресми түрде Arduino үшін жасалғанына қарамастан, біз FPGA мен Raspberry Pi 4B байланыстыратын боламыз. Бұл оқулықта үш тапсырма орындалады: (A) Бір мезгілде екі түймені басыңыз. FPGA бұрышты бұру үшін
FPGA циклоны IV DueProLogic - түймешігі мен жарық диоды: 5 қадам

FPGA циклоны IV DueProLogic - басу түймесі мен жарықдиодты: Бұл оқулықта біз сыртқы жарықдиодты схеманы басқару үшін FPGA қолданамыз. Біз келесі тапсырмаларды орындаймыз (A) Жарық диодты басқару үшін FPGA IV DuePrologic циклонындағы түймелерді пайдаланыңыз. (B) Жарық диодты & мезгіл -мезгіл бейне демонстрация зертханасы
ESP8266 RGB LED STRIP WIFI басқару - NODEMCU Wifi арқылы басқарылатын жарықдиодты жолақ үшін IR қашықтан басқару құралы ретінде - RGB LED STRIP смартфонды басқару: 4 қадам

ESP8266 RGB LED STRIP WIFI басқару | NODEMCU Wifi арқылы басқарылатын жарықдиодты жолақ үшін IR қашықтан басқару құралы ретінде | Смартфонды RGB LED STRIP басқару: Сәлеметсіздер ме, балалар, бұл оқулықта біз nodemcu немесе esp8266 -ды RGB жарықдиодты жолағын басқару үшін инфрақызыл қашықтан басқару құралы ретінде қолдануды үйренеміз, ал Nodemcu смартфон Wi -Fi арқылы басқарылады. Негізінде сіз RGB LED STRIP -ті смартфонмен басқара аласыз
Ардуино циклонының аркадалық ойыны: 6 қадам

Arduino циклонының аркадалық ойыны: жыпылықтайтын шамдар! Ардуино! Ойын! Тағы не айту керек? Бұл ойын циклон аркадалық ойынына негізделген, онда ойыншы белгілі бір жерде шеңбер бойымен жылжуды тоқтатуға тырысады
Қозғалыс машиналары: 10 қадам (суреттермен)

Қозғалыс машиналары: Қозғалыс машиналары қозғалысқа, механизмге және робототехникаға ойындық кіріспе ұсынады. Жинақтар фанера лазерлі корпусынан және баяу қозғалатын роторлы қозғалтқыштар, аккумуляторлық пластикалық пакеттер мен сырғытпалар сияқты қарапайым көлемді бөлшектерден тұрады. Оқушылар тәжірибе жасай алады