Skip to content

Commit 7f917c1

Browse files
committed
fixed bugs
- functions updated - new error function added - new config parameters added - major and minor bug fixes
1 parent 8dff9fd commit 7f917c1

File tree

11 files changed

+411
-128
lines changed

11 files changed

+411
-128
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ This Arduino library allows you to use Deneyap Dual Channel Motor Driver with I2
4141
- `library.properties ` General library properties for the Arduino package manager
4242

4343
## Version History
44+
1.1.1 - updated functions, new error function added, new config parameters added, major and minor bug fixed
45+
4446
1.1.0 - added new class(Stepper), added new functions(StepDriver, PwmConfig, StandBy, Mode, setSpeed, step), updated function(begin), added new sketches(StepMotorTamTurSurme, CiftKanalliDCmotorHizlanmasi, CiftKanalliDCmotorSurmeNoI2C, StepMotorSaatYonuSaatYonuTersi, StepMotorSurmeNoI2C), updated sketch(CiftKanalliDCmotorSurme)
4547

4648
1.0.0 - initial release

docs/README_tr.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ Bu Arduino kütüphanesi Deneyap Çift Kanallı Motor Sürücü I2C çevre birim
4040
- `library.properties` Arduino yöneticisi için genel kütüphane özellikleri
4141

4242
## Sürüm Geçmişi
43+
1.1.1 - fonksiyonlar güncellendi, yeni hata fonksiyonu eklendi, yeni yapılandırma parametreleri eklendi, hatalar giderildi
44+
4345
1.1.0 - yeni class eklendi(Stepper), yeni fonksiyonlar eklendi(StepDriver, PwmConfig, StandBy, Mode, setSpeed, step), fonksiyon güncellendi(begin), yeni örnekler eklendi(StepMotorTamTurSurme, CiftKanalliDCmotorHizlanmasi, CiftKanalliDCmotorSurmeNoI2C, StepMotorSaatYonuSaatYonuTersi, StepMotorSurmeNoI2C), örnek güncellendi(CiftKanalliDCmotorSurme)
4446

4547
1.0.0 - ilk sürüm

examples/CiftKanalliDCmotorHizlanmasi/CiftKanalliDCmotorHizlanmasi.ino

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,24 @@ DualMotorDriver MotorSurucu; // DualMotorDriver için cla
1515

1616
void setup() {
1717
Serial.begin(115200); // Seri haberleşme başlatılması
18-
MotorSurucu.begin(0x16); // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
18+
if (!MotorSurucu.begin(0x16)) { // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
19+
delay(3000);
20+
Serial.println("I2C bağlantısı başarısız"); // I2C bağlantısı başarısız olursa seri port ekranına yazdırılması
21+
while(1);
22+
}
1923
}
2024

21-
void loop() {
22-
MotorSurucu.StandBy(ENABLE); // DC motorların çalışmasının aktif edilmesi
23-
for(int i= 0; i<=100; i=i+10){ // DC motorlar ileri yönde, dutycyle hızlarını 0'dan 100'e +10 artırılması
24-
MotorSurucu.Motor1Drive(i,1);
25-
MotorSurucu.Motor2Drive(i,1);
26-
if(i>80){ // dutycyle hızı %80'den büyük olursa
27-
MotorSurucu.StandBy(DISABLE); // DC motorların çalışmasının pasif edilmesi
28-
Serial.println("DC motor dutycyle hızları %80'den yüksek !!!");
25+
void loop() {
26+
MotorSurucu.StandbyMode(ENABLE); // DC motorların çalışmasının aktif edilmesi
27+
for(int i=0; i<100; i=i+10) { // DC motorlar ileri yönde, dutycyle hızlarını 0'dan 100'e +10 artırılması
28+
Serial.println("DC motorlar hızlanıyor !!!");
29+
MotorSurucu.MotorDrive(MOTOR1, i, 1);
30+
MotorSurucu.MotorDrive(MOTOR2, i, 1);
31+
if(i>80) { // dutycyle hızı %80'den büyük olursa
32+
MotorSurucu.StandbyMode(DISABLE); // DC motorların çalışmasının pasif edilmesi
33+
Serial.println("DC motorların dutycyle hızları %80'den yüksek !!!");
2934
Serial.println("Motorlar durduruldu.");
3035
}
31-
delay(3000); // 3 saniye bekleme süresi
36+
delay(5000); // 5 saniye bekleme süresi
3237
}
3338
}

examples/CiftKanalliDCmotorSurme/CiftKanalliDCmotorSurme.ino

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,15 @@ DualMotorDriver MotorSurucu; // DualMotorDriver için cla
1515

1616
void setup() {
1717
Serial.begin(115200); // Seri haberleşme başlatılması
18-
MotorSurucu.begin(0x16); // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
19-
MotorSurucu.Mode(DCMOTOR);
18+
if (!MotorSurucu.begin(0x16)) { // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
19+
delay(3000);
20+
Serial.println("I2C bağlantısı başarısız"); // I2C bağlantısı başarısız olursa seri port ekranına yazdırılması
21+
while(1);
22+
}
2023
}
2124

2225
void loop() {
23-
/* Motor1Drive(dutyCycleDegeri, yonBilgisi)
24-
Motor2Drive(dutyCycleDegeri, yonBilgisi)
25-
DUTYCYCLE -------> %0-100
26-
ILERI -------> 1
27-
GERI -------> 0 */
28-
MotorSurucu.Motor1Drive(80,1); // Birinci motor çalıştırılması. %80 dutycyle hızı ile ileri yönde hareket edilmesi
29-
MotorSurucu.Motor2Drive(75,0); // İkinci motor çalıştırılması. %75 dutycyle hızı ile geri yönde hareket edilmesi
30-
delay(50); // 50 milisaniye bekleme süresi
26+
MotorSurucu.MotorDrive(MOTOR1, 80, 1); // Birinci motor çalıştırılması. %80 dutycyle hızı ile ileri yönde hareket edilmesi
27+
MotorSurucu.MotorDrive(MOTOR2, 75, 0); // İkinci motor çalıştırılması. %75 dutycyle hızı ile geri yönde hareket edilmesi
28+
if(MotorSurucu.CheckMotorError()==1) Serial.println("HATA !!! Lütfen motorları kontrol edin");
3129
}

examples/StepMotorSaatYonuSaatYonuTersi/StepMotorSaatYonuSaatYonuTersi.ino

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,33 +4,36 @@
44
* Step motor tam tur atmaktadır. Step motor birer adım ilerlemekte ve adım sayısını seri port ekranına yazdırmaktadır.
55
*
66
* 28BYJ-48 step motoruna göre yazılmıştır. Farklı bir step motor kullanırsanız gerekli değişiklikleri gerçekleştirin.
7-
* STEP MOTOR MAVİ -> A0-
8-
* STEP MOTOR PEMBE -> B0+
9-
* STEP MOTOR SARI -> A0+
10-
* STEP MOTOR TURUNCU -> B0-
7+
* STEP MOTOR MAVİ -> B0+ (Terminal(Sağ Üst) çıkışı)
8+
* STEP MOTOR PEMBE -> A0- (Terminal(Sağ Alt) çıkışı)
9+
* STEP MOTOR SARI -> B0- (Terminal(Sağ Üst) çıkışı)
10+
* STEP MOTOR TURUNCU -> A0+ (Terminal(Sağ Alt) çıkışı)
1111
*
1212
* Bu örnek Deneyap Çift Kanallı Motor Sürücü için oluşturulmuştur
1313
* ------> https://docs.deneyapkart.org/tr/content/contentDetail/deneyap-module-deneyap-dual-channel-motor-driver-m <------
1414
* ------> https://github.com/deneyapkart/deneyap-cift-kanalli-motor-surucu-arduino-library <------
1515
*/
16-
#include <Deneyap_CiftKanalliMotorSurucu.h> // Deneyap Çift Kanallı Motor Sürücü kütüphanesi eklenmesi
16+
#include <Deneyap_CiftKanalliMotorSurucu.h> // Deneyap Çift Kanallı Motor Sürücü kütüphanesi eklenmesi
1717

18-
const int stepsPerRevolution = 4096; // Tam tur adım sayısı, kullandığınız step motora göre tur sayısı değişiklik gösterebilir
18+
const int stepsPerRevolution = 4076; // Tam tur adım sayısı, kullandığınız step motora göre tur sayısı değişiklik gösterebilir
1919

20-
Stepper myStepper(stepsPerRevolution); // Stepper için class tanımlanması
20+
Stepper myStepper(stepsPerRevolution); // Stepper için class tanımlanması
2121

2222
void setup() {
23-
Serial.begin(115200); // Seri haberleşme başlatılması
24-
myStepper.begin(0x16); // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
25-
myStepper.Mode(STEP);
26-
myStepper.setSpeed(30); // Step motor hızının belirlenmesi
23+
Serial.begin(115200); // Seri haberleşme başlatılması
24+
if (!myStepper.begin(0x16)) { // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
25+
delay(3000);
26+
Serial.println("I2C bağlantısı başarısız"); // I2C bağlantısı başarısız olursa seri port ekranına yazdırılması
27+
while(1);
28+
}
29+
myStepper.setSpeed(60); // Step motor hızının belirlenmesi
2730
}
2831

2932
void loop() {
3033
Serial.println("Step motor saat yönünde dönüyor...");
31-
myStepper.step(2048); // Step motorun saat yönünde yarım tur atması
34+
myStepper.step(2038); // Step motorun saat yönünde yarım tur atması
3235
delay(1000);
3336
Serial.println("Step motor saat yönünün tersine dönüyor...");
34-
myStepper.step(-2048); // Step motorun saat yönü tersinde yarım tur atması
37+
myStepper.step(-2038); // Step motorun saat yönü tersinde yarım tur atması
3538
delay(1000);
3639
}

examples/StepMotorSurmeNoI2C/StepMotorSurmeNoI2C.ino

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
* Step motor saat yöne tersinde dönmektedir.
55
*
66
* 28BYJ-48 step motoruna göre yazılmıştır. Farklı bir step motor kullanırsanız gerekli değişiklikleri gerçekleştirin.
7-
* STEP MOTOR MAVİ -> A0-
8-
* STEP MOTOR PEMBE -> B0+
9-
* STEP MOTOR SARI -> A0+
10-
* STEP MOTOR TURUNCU -> B0-
7+
* STEP MOTOR MAVİ -> B0+ (Terminal(Sağ Üst) çıkışı)
8+
* STEP MOTOR PEMBE -> A0- (Terminal(Sağ Alt) çıkışı)
9+
* STEP MOTOR SARI -> B0- (Terminal(Sağ Üst) çıkışı)
10+
* STEP MOTOR TURUNCU -> A0+ (Terminal(Sağ Alt) çıkışı)
1111
*
1212
* >>>Deneyap Motor Sürücü STNBY pini 3.3v bağlanmalıdır<<<<
1313
*
@@ -25,8 +25,8 @@ void setup() {
2525
}
2626

2727
void loop() {
28-
//saatYonu(5); // Step motorun saat yönünde döndürülmesi, her bir adım arasında 5 mili saniye beklemesi
29-
saatYonuTersi(5); // Step motorun saat yönünün tersine döndürülmesi, her bir adım arasında 5 mili saniye beklemesi
28+
//saatYonu(5); // Step motorun saat yönünde döndürülmesi, her bir adım arasında 5 milisaniye beklemesi
29+
saatYonuTersi(5); // Step motorun saat yönünün tersine döndürülmesi, her bir adım arasında 5 milisaniye beklemesi
3030
}
3131

3232
void saatYonu(int bekleme){

examples/StepMotorTamTurSurme/StepMotorTamTurSurme.ino

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,39 +4,42 @@
44
* Step motor tam tur atmaktadır. Step motor birer adım ilerlemekte ve adım sayısını seri port ekranına yazdırmaktadır.
55
*
66
* 28BYJ-48 step motoruna göre yazılmıştır. Farklı bir step motor kullanırsanız gerekli değişiklikleri gerçekleştirin.
7-
* STEP MOTOR MAVİ -> A0-
8-
* STEP MOTOR PEMBE -> B0+
9-
* STEP MOTOR SARI -> A0+
10-
* STEP MOTOR TURUNCU -> B0-
7+
* STEP MOTOR MAVİ -> B0+ (Terminal(Sağ Üst) çıkışı)
8+
* STEP MOTOR PEMBE -> A0- (Terminal(Sağ Alt) çıkışı)
9+
* STEP MOTOR SARI -> B0- (Terminal(Sağ Üst) çıkışı)
10+
* STEP MOTOR TURUNCU -> A0+ (Terminal(Sağ Alt) çıkışı)
1111
*
1212
* Bu örnek Deneyap Çift Kanallı Motor Sürücü için oluşturulmuştur
1313
* ------> https://docs.deneyapkart.org/tr/content/contentDetail/deneyap-module-deneyap-dual-channel-motor-driver-m <------
1414
* ------> https://github.com/deneyapkart/deneyap-cift-kanalli-motor-surucu-arduino-library <------
1515
*/
16-
#include <Deneyap_CiftKanalliMotorSurucu.h> // Deneyap Çift Kanallı Motor Sürücü kütüphanesi eklenmesi
16+
#include <Deneyap_CiftKanalliMotorSurucu.h> // Deneyap Çift Kanallı Motor Sürücü kütüphanesi eklenmesi
1717

18-
const int stepsPerRevolution = 4096; // Tam tur adım sayısı, kullandığınız step motora göre tur sayısı değişiklik gösterebilir
18+
const int stepsPerRevolution = 4076; // Tam tur adım sayısı, kullandığınız step motora göre tur sayısı değişiklik gösterebilir
1919

20-
Stepper myStepper(stepsPerRevolution); // Stepper için class tanımlanması
20+
Stepper myStepper(stepsPerRevolution); // Stepper için class tanımlanması
2121

2222
int adimSayisi= 0;
2323

2424
void setup() {
25-
Serial.begin(115200); // Seri haberleşme başlatılması
26-
myStepper.begin(0x16); // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
27-
myStepper.Mode(STEP);
28-
myStepper.setSpeed(60); // Step motor hızının belirlenmesi
25+
Serial.begin(115200); // Seri haberleşme başlatılması
26+
if (!myStepper.begin(0x16)) { // begin(slaveAdress) fonksiyonu ile cihazların haberleşmesi başlatılması, varsayılan: begin(0x16,500), frekans:500Hz
27+
delay(3000);
28+
Serial.println("I2C bağlantısı başarısız"); // I2C bağlantısı başarısız olursa seri port ekranına yazdırılması
29+
while(1);
30+
}
31+
myStepper.setSpeed(60); // Step motor hızının belirlenmesi
2932
}
3033

3134
void loop() {
32-
myStepper.step(1); // Step motorun 1 adım ilerlemesi
35+
myStepper.step(1); // Step motorun 1 adım ilerlemesi
3336
Serial.print("adım sayısı:");
34-
Serial.println(adimSayisi); // Adım sayısının seri port ekranına yazdırılması
37+
Serial.println(adimSayisi); // Adım sayısının seri port ekranına yazdırılması
3538
adimSayisi++;
3639
delay(10);
37-
if(stepsPerRevolution == adimSayisi) { // Tam tur atılırsa
38-
Serial.println("Tam tur atıldı"); // "Tam tur atıldı" seri port ekranına yazdırılması
39-
delay(3000); // 3 saniye bekleme süresi
40-
adimSayisi=0; // Adım sayısının sıfırlanması
40+
if(stepsPerRevolution == adimSayisi) { // Tam tur atılırsa
41+
Serial.println("Tam tur atıldı"); // "Tam tur atıldı" seri port ekranına yazdırılması
42+
delay(3000); // 3 saniye bekleme süresi
43+
adimSayisi=0; // Adım sayısının sıfırlanması
4144
}
4245
}

keywords.txt

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,31 @@ Deneyap_CiftKanalliMotorSurucu KEYWORD1
1414

1515
DualMotorDriver KEYWORD1
1616
Stepper KEYWORD1
17+
1718
#######################################
1819
# Methods and Functions (KEYWORD2)
1920
#######################################
21+
2022
begin KEYWORD2
2123
isConnected KEYWORD2
2224
getFwVersion KEYWORD2
2325
setI2Caddress KEYWORD2
24-
Motor1Drive KEYWORD2
25-
Motor2Drive KEYWORD2
26+
CheckMotorError KEYWORD2
27+
MotorDrive KEYWORD2
2628
StepDriver KEYWORD2
2729
PwmConfig KEYWORD2
28-
StandBy KEYWORD2
29-
Mode KEYWORD2
30+
StandbyMode KEYWORD2
31+
SelectModeDC KEYWORD2
32+
SelectModeSTEP KEYWORD2
33+
SelectMotorType KEYWORD2
3034
Stepper KEYWORD2
3135
setSpeed KEYWORD2
3236
step KEYWORD2
37+
3338
#######################################
3439
# Constants (LITERAL1)
35-
#######################################
40+
#######################################
41+
MOTOR1 LITERAL1
42+
MOTOR2 LITERAL1
43+
DISABLE LITERAL1
44+
ENABLE LITERAL1

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=Deneyap Cift Kanalli Motor Surucu
2-
version=1.1.0
2+
version=1.1.1
33
author=Turkish Technnology Team Foundation (T3)
44
maintainer=Turkish Technnology Team Foundation (T3)
55
sentence=Deneyap Dual Channel Motor Driver TC78H660FTG

0 commit comments

Comments
 (0)