====== Monster Shield ====== {{:materiel:monstershield:monstershield.jpg?400|}} [[http://www.instructables.com/id/Monster-Motor-Shield-VNH2SP30/|Instructables]] * Voltage Range : 5.5V - 16V * Maximum Current rating : 30A * Practical Continuous Current: 14 A * Current sense output proportional to motor current * MOSFET on-resistance: 19 mΩ (per leg) * Maximum PWM frequency: 20 kHz * Thermal Shutdown * Undervoltage and Overvoltage shutdown // Test Monster shield - UNO // Réf : http://www.instructables.com/id/Monster-Motor-Shield-VNH2SP30/ // Enable : monster shield A0 et A1 : 5V Arduino // Alim 6-12VCC // Mapping UNO Monster Shield // D5 D5 (M1 pwm) // D7 D7 (M1 Clockwise CW) digital // D8 D8 (M1 Counterclockwise CCW) digital // D6 D6 (M2 pwm) // D4 D4 (M2 Clockwise CW) digital // D9 D9 (M2 Counterclockwise CCW) digital // motor 1 #define PWM1 5 #define CW1 7 #define CCW1 8 // motor 2 #define PWM2 6 #define CW2 4 #define CCW2 9 void setup() { pinMode(PWM1, OUTPUT); pinMode(CW1, OUTPUT); pinMode(CCW1, OUTPUT); pinMode(PWM2, OUTPUT); pinMode(CW2, OUTPUT); pinMode(CCW2, OUTPUT); } void loop() { // direction CW digitalWrite(CW1, HIGH); digitalWrite(CCW1, LOW); digitalWrite(CW2, HIGH); digitalWrite(CCW2, LOW); analogWrite(PWM1, 0); analogWrite(PWM2, 0); delay(3000); analogWrite(PWM1, 120); analogWrite(PWM2, 120); delay(3000); analogWrite(PWM1, 255); analogWrite(PWM2, 255); delay(3000); // direction CCW digitalWrite(CW1, LOW); digitalWrite(CCW1, HIGH); digitalWrite(CW2, LOW); digitalWrite(CCW2, HIGH); analogWrite(PWM1, 0); analogWrite(PWM2, 0); delay(3000); analogWrite(PWM1, 120); analogWrite(PWM2, 120); delay(3000); analogWrite(PWM1, 255); analogWrite(PWM2, 255); delay(3000); } ++++ Code avec 4 pins seulement pour les 2 moteurs | // Test Monster shield - UNO // Juste deux pins pour la direction des deux moteurs au lieu de 4. // direction inversée // Ref : http://www.instructables.com/id/Monster-Motor-Shield-VNH2SP30/ // Enable : monster shield A0 et A1 : 5V Arduino // Alim 12VCC // Mapping UNO Monster Shield // D5 D5 (M1 pwm) // D7 D7 (M1 Clockwise CW) digital // D8 D8 (M1 Counterclockwise CCW) digital // D6 D6 (M2 pwm) // D4 D4 (M2 Clockwise CW) digital // D9 D9 (M2 Counterclockwise CCW) digital // 5V 5V // GND GND // monster pins #define PWM1 5 #define PWM2 6 #define CW 7 // CW1 7 + CCW2 9 (inversé) #define CCW 8 // CCW1 8 + CW2 4 (inversé) void setup() { pinMode(PWM1, OUTPUT); pinMode(PWM2, OUTPUT); pinMode(CW, OUTPUT); pinMode(CCW, OUTPUT); } void loop() { // direction CW digitalWrite(CW, HIGH); digitalWrite(CCW, LOW); analogWrite(PWM1, 0); analogWrite(PWM2, 0); delay(2000); analogWrite(PWM1, 80); analogWrite(PWM2, 80); delay(2000); analogWrite(PWM1, 150); analogWrite(PWM2, 150); delay(2000); // direction CCW digitalWrite(CW, LOW); digitalWrite(CCW, HIGH); analogWrite(PWM1, 0); analogWrite(PWM2, 0); delay(2000); analogWrite(PWM1, 80); analogWrite(PWM2, 80); delay(2000); analogWrite(PWM1, 150); analogWrite(PWM2, 150); delay(2000); } ++++