תוכן עניינים:

שליטה במנועי DC באמצעות ה- L298N באמצעות מיקרו -בקר CloudX: 3 שלבים
שליטה במנועי DC באמצעות ה- L298N באמצעות מיקרו -בקר CloudX: 3 שלבים

וִידֵאוֹ: שליטה במנועי DC באמצעות ה- L298N באמצעות מיקרו -בקר CloudX: 3 שלבים

וִידֵאוֹ: שליטה במנועי DC באמצעות ה- L298N באמצעות מיקרו -בקר CloudX: 3 שלבים
וִידֵאוֹ: Home Automation: Change direction of rotation of DC motor using 2 relays and Arduino - Robojax 2024, יולי
Anonim
שליטה במנועי DC באמצעות L298N באמצעות מיקרו -בקר CloudX
שליטה במנועי DC באמצעות L298N באמצעות מיקרו -בקר CloudX
שליטה במנועי DC באמצעות L298N באמצעות מיקרו -בקר CloudX
שליטה במנועי DC באמצעות L298N באמצעות מיקרו -בקר CloudX

בפרויקט זה נסביר כיצד להשתמש ב- L298N H-bridge שלנו כדי להגדיל ולהוריד את מהירות מנוע DC. ניתן להשתמש במודול L-298N H-bridge עם מנועים בעלי מתח בין 5 ל- 35V DC.

יש גם רגולטור 5V המשולב, כך שאם מתח האספקה שלך הוא עד 12V תוכל גם לקבל מקור 5V מהלוח. מודולי בקר מנוע כפול L298 H-bridge אלה אינם יקרים וזמינים כאן

שלב 1: רכיבים

רכיבים
רכיבים
רכיבים
רכיבים
רכיבים
רכיבים
  • בקר מיקרו CloudX
  • CloudX Softcard
  • כבל USB V3
  • גשר H298N
  • לוח לחם
  • חוטי מגשר
  • מנוע DC
  • נגד 10k
  • 4* כפתור לחיצה

אתה יכול באינטרנט כאן

שלב 2: תרשים מעגלים

תרשים מעגלים
תרשים מעגלים

עקוב אחר המעגל למעלה

שלב 3: קוד

העתק קוד זה ל- CloudX IDE שלך

#כלול #כלול

חתום char i, j;

דגל ביט;

להכין(){

// הגדר כאן עבור (i = 1; i <5; i ++) {pinMode (i, INPUT); } PWM1_Init (5000); PWM2_Init (5000); PWM1_Start (); PWM2_Start (); PWM1_Duty (0); PWM2_Duty (0); i = j = 0; loop () {// תכנית כאן אם (! readPin (1)) {delayMs (200); אם (flag == 0) {PWM1_Duty (i); PWM2_Duty (0); } אם (flag == 1) {PWM2_Duty (j); PWM1_Duty (0); } דגל = ~ דגל; } אם (! readPin (2)) {delayMs (200); אם (דגל == 1) {// i -= 10; אני--; אם (i <= 0) i = 0; PWM1_Duty (i); PWM2_Duty (0); } אם (דגל == 0) {// j -= 10; j--; אם (j <= 0) j = 0; PWM2_Duty (j); PWM1_Duty (0); }} if (! readPin (3)) {delayMs (200); אם (דגל == 1) {// i += 10; i ++; אם (i> = 100) i = 100; PWM1_Duty (i); PWM2_Duty (0); } אם (דגל == 0) {// j += 10; j ++; אם (j> = 100) j = 100; PWM2_Duty (j); PWM1_Duty (0); }}

אם (! readPin (4)) {

עיכוב Ms (200); PWM1_Duty (0); PWM2_Duty (0); i = 0; j = 0; }

}

}

מוּמלָץ: