Skip to content
Snippets Groups Projects
Commit e5374b22 authored by Orhan-Timo Altan's avatar Orhan-Timo Altan
Browse files

Präfix thk_ hinzugefügt

parent d071c089
No related branches found
No related tags found
No related merge requests found
Pipeline #188566 failed
# **BITs DCMotor** # **DC-Motor Driver**
Eine Klasse zur Ansteuerung von Gleichstrommotoren für unterschiedliche Motortreiber. Eine Klasse zur Ansteuerung von Gleichstrommotoren für unterschiedliche Motortreiber.
...@@ -20,22 +20,16 @@ Zur Verwendung siehe zunächst das Beispiel `drive.ino`<br /> ...@@ -20,22 +20,16 @@ Zur Verwendung siehe zunächst das Beispiel `drive.ino`<br />
Es wird für jeden Motortreiber nur ein Objekt benötigt, dem beim instanziieren alle benötigten Informationen übergeben wird.<br /> Es wird für jeden Motortreiber nur ein Objekt benötigt, dem beim instanziieren alle benötigten Informationen übergeben wird.<br />
<br /> <br />
Einbinden der Libraries: **Einbinden der Libraries:**
```arduino ```arduino
#include <motor_driver_tb6612fng.h> #include <thk_motor_driver_tb6612fng.h>
``` ```
Instanziieren eines Motortreiber-Objektes mit Standard Pinbelegung für das BITs-Fahrzeug: **Instanziieren eines Motortreiber-Objektes:**
```arduino ```arduino
MotorDriverTB6612FNG motorDriverTB6612FNG thk_MotorDriverTB6612FNG motorExample(MOTOR_COUNT, MOTOR_STBY, MOTOR_PWM_A, MOTOR_IN1, MOTOR_IN2, MOTOR_PWM_B, MOTOR_IN3, MOTOR_IN4)
```
Instanziieren eines Motortreiber-Objektes mit angepasster Pinbelegung:
```arduino
MotorDriverTB6612FNG motorDriverTB6612FNG(MOTOR_COUNT, MOTOR_STBY, MOTOR_PWM_A, MOTOR_IN1, MOTOR_IN2, MOTOR_PWM_B, MOTOR_IN3, MOTOR_IN4)
``` ```
Die Parameter des Motortreiber-Objektes: Die Parameter des Motortreiber-Objektes:
......
#include <motor_driver_tb6612fng.h> #include <thk_motor_driver_tb6612fng.h>
uint8_t velocity = 255; uint8_t velocity = 255;
/* *************************************************************************** * const int MOTOR_COUNT = 1;
* Wenn die Default Pinbelegung genutzt werden soll, folgende Zeile verwenden: * const int MOTOR_STBY = 38;
* *************************************************************************** */ const int MOTOR_PWM_A = 6;
MotorDriverTB6612FNG motorDriverTB6612FNG; const int MOTOR_IN1 = 40;
const int MOTOR_IN2 = 42;
/* ********************************************************************************************** * const int MOTOR_PWM_B = 0;
* Wenn eine andere Pinbelegung gewünscht ist, dann wie folgt den Motortreiber in Betrieb nehmen: * const int MOTOR_IN3 = 0;
* ********************************************************************************************** */ const int MOTOR_IN4 = 0;
// const int MOTOR_COUNT = 1; thk_MotorDriverTB6612FNG motor(MOTOR_COUNT, MOTOR_STBY, MOTOR_PWM_A, MOTOR_IN1, MOTOR_IN2, MOTOR_PWM_B, MOTOR_IN3, MOTOR_IN4);
// const int MOTOR_STBY = 38;
// const int MOTOR_PWM_A = 10;
// const int MOTOR_IN1 = 40;
// const int MOTOR_IN2 = 42;
// const int MOTOR_PWM_B = 0;
// const int MOTOR_IN3 = 0;
// const int MOTOR_IN4 = 0;
// MotorDriverTB6612FNG motorDriverTB6612FNG(MOTOR_COUNT, MOTOR_STBY, MOTOR_PWM_A, MOTOR_IN1, MOTOR_IN2, MOTOR_PWM_B, MOTOR_IN3, MOTOR_IN4);
void setup() void setup()
{ {
Serial.begin(115200); Serial.begin(115200);
motorDriverTB6612FNG.init(); motor.init();
} }
void loop() void loop()
{ {
motorDriverTB6612FNG.drive_forward(velocity); motor.drive_forward(velocity);
delay(2000); delay(2000);
motorDriverTB6612FNG.stop(); motor.stop();
delay(1000); delay(1000);
motorDriverTB6612FNG.drive_backward(velocity); motor.drive_backward(velocity);
delay(2000); delay(2000);
motorDriverTB6612FNG.stop(); motor.stop();
delay(1000); delay(1000);
motorDriverTB6612FNG.drive_forward(velocity); motor.drive_forward(velocity);
delay(2000); delay(2000);
motorDriverTB6612FNG.stop(); motor.stop();
delay(1000); delay(1000);
motorDriverTB6612FNG.drive_backward(velocity); motor.drive_backward(velocity);
delay(2000); delay(2000);
motorDriverTB6612FNG.stop(); motor.stop();
delay(1000); delay(1000);
} }
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# Datatypes (KEYWORD1) # Datatypes (KEYWORD1)
####################################### #######################################
MotorDriverTB6612FNG KEYWORD1 thk_MotorDriverTB6612FNG KEYWORD1
####################################### #######################################
......
#include "motor_driver.h" #include "thk_motor_driver.h"
void MotorDriver::drive_forward(uint8_t speed) { void thk_MotorDriver::drive_forward(uint8_t speed) {
this->drive(speed, true); this->drive(speed, true);
} }
void MotorDriver::drive_backward(uint8_t speed) { void thk_MotorDriver::drive_backward(uint8_t speed) {
this->drive(speed, false); this->drive(speed, false);
} }
\ No newline at end of file
/* /*
* Interface: Motortreiber * Interface: thk_Motortreiber
* *
* Enthält alle notwendigen Standardfunktionen eines Motortreibers * Enthält alle notwendigen Standardfunktionen eines Motortreibers
* *
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include <Arduino.h> #include <Arduino.h>
class MotorDriver { class thk_MotorDriver {
public: public:
enum Driving_state { stoped, forward, backward}; enum Driving_state { stoped, forward, backward};
void drive_forward(uint8_t speed); void drive_forward(uint8_t speed);
......
#include "motor_driver_tb6612fng.h" #include "thk_motor_driver_tb6612fng.h"
MotorDriverTB6612FNG::MotorDriverTB6612FNG(){} thk_MotorDriverTB6612FNG::thk_MotorDriverTB6612FNG(){}
MotorDriverTB6612FNG::MotorDriverTB6612FNG(uint8_t motor_count, uint8_t pin_stby, uint8_t pin_pwm_a, uint8_t pin_in_1, uint8_t pin_in_2, uint8_t pin_pwm_b, uint8_t pin_in_3, uint8_t pin_in_4) : motor_count(motor_count), pin_stby(pin_stby), pin_pwm_a(pin_pwm_a), pin_in_1(pin_in_1), pin_in_2(pin_in_2), pin_pwm_b(pin_pwm_b), pin_in_3(pin_in_3), pin_in_4(pin_in_4){} thk_MotorDriverTB6612FNG::thk_MotorDriverTB6612FNG(uint8_t motor_count, uint8_t pin_stby, uint8_t pin_pwm_a, uint8_t pin_in_1, uint8_t pin_in_2, uint8_t pin_pwm_b, uint8_t pin_in_3, uint8_t pin_in_4) : motor_count(motor_count), pin_stby(pin_stby), pin_pwm_a(pin_pwm_a), pin_in_1(pin_in_1), pin_in_2(pin_in_2), pin_pwm_b(pin_pwm_b), pin_in_3(pin_in_3), pin_in_4(pin_in_4){}
void MotorDriverTB6612FNG::init() void thk_MotorDriverTB6612FNG::init()
{ {
if(this->motor_count < 1 || this->motor_count > 2) if(this->motor_count < 1 || this->motor_count > 2)
{ {
...@@ -39,7 +39,7 @@ void MotorDriverTB6612FNG::init() ...@@ -39,7 +39,7 @@ void MotorDriverTB6612FNG::init()
this->is_setup_correct = true; this->is_setup_correct = true;
} }
void MotorDriverTB6612FNG::drive(byte speed, bool is_forward) { void thk_MotorDriverTB6612FNG::drive(byte speed, bool is_forward) {
if(this->is_setup_correct == false) if(this->is_setup_correct == false)
{ {
Serial.println("Motoren werden nicht angesteuert, da keine gültige Initialisierung durchgeführt worden ist!"); Serial.println("Motoren werden nicht angesteuert, da keine gültige Initialisierung durchgeführt worden ist!");
...@@ -87,7 +87,7 @@ void MotorDriverTB6612FNG::drive(byte speed, bool is_forward) { ...@@ -87,7 +87,7 @@ void MotorDriverTB6612FNG::drive(byte speed, bool is_forward) {
} }
} }
void MotorDriverTB6612FNG::stop() { void thk_MotorDriverTB6612FNG::stop() {
if(this->is_setup_correct == false) if(this->is_setup_correct == false)
{ {
Serial.println("Motoren werden nicht angesteuert, da keine gültige Initialisierung durchgeführt worden ist!"); Serial.println("Motoren werden nicht angesteuert, da keine gültige Initialisierung durchgeführt worden ist!");
......
/* /*
* Klasse: MotorDriverTB6612FNG * Klasse: thk_MotorDriverTB6612FNG
* *
* Zur Ansteuerung von Gleichstrommotoren mit dem Motortreiber TB6612FNG * Zur Ansteuerung von Gleichstrommotoren mit dem Motortreiber TB6612FNG
* *
...@@ -11,13 +11,13 @@ ...@@ -11,13 +11,13 @@
#define MOTOR_DRIVER_TB6612FNG_H #define MOTOR_DRIVER_TB6612FNG_H
#include <Arduino.h> #include <Arduino.h>
#include "motor_driver.h" #include "thk_motor_driver.h"
class MotorDriverTB6612FNG : public MotorDriver class thk_MotorDriverTB6612FNG : public thk_MotorDriver
{ {
public: public:
MotorDriverTB6612FNG(); thk_MotorDriverTB6612FNG();
MotorDriverTB6612FNG(uint8_t motor_count, uint8_t pin_stby, uint8_t pin_pwm_a, uint8_t pin_in_1, uint8_t pin_in_2, uint8_t pin_pwm_b, uint8_t pin_in_3, uint8_t pin_in_4); thk_MotorDriverTB6612FNG(uint8_t motor_count, uint8_t pin_stby, uint8_t pin_pwm_a, uint8_t pin_in_1, uint8_t pin_in_2, uint8_t pin_pwm_b, uint8_t pin_in_3, uint8_t pin_in_4);
void stop() override; void stop() override;
void drive(uint8_t speed, bool is_forward) override; void drive(uint8_t speed, bool is_forward) override;
void init(); void init();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment