Cześć wszystkim.
Piszę do was tutaj z problemem odnośnie sterowania silnika BLDC.
Poniżej załączam wszystkie parametry do elementów.
Potrzebuję na studiach uzyskać pełen zakres obrotowy silnika aby wyznaczyć charakterystykę. Problem w tym że pomimo wielu prób z ustawieniami sterownika ESC oraz zmianach w programie na Arduino nie mogę sprawić aby silnik zaczął pracować od możliwie niskich obrotów.
Do sterowania używam potencjometru 10kohm podłączonego do arduino. Na wyjściu PWM jest podłączony sterownik według schematu.
Mimo zmian w programie na mniejszą ilość pulsów i dobrze wyskalowanego zakresu potencjometru, silnik od razu rusza od w miarę wysokich obrotów około 3tys. Płynna regulacja oczywiście działa w zakresie od tych 3tys do pełnych obrotów silnika. Zależy mi jednak aby te obroty były stosunkowo małe t.z.n w granicach od 0-max albo przynajmniej od 500obr-max a nie jak w tym momencie od jakiejś dziwnej prędkości.
Czy problem jest w samym sterowniku, że np jest przeznaczony do modeli latających ?
Co mogę zmienić ?
Bardzo proszę o pomoc
Program używany przeze mnie:
#include <Servo.h>
Servo ESC; // create servo object to control the ESC
int potValue; // value from the analog pin
void setup() {
// Attach the ESC on pin 9
ESC.attach(9,1000,2000); // (pin, min pulse width, max pulse width in microseconds)
}
void loop() {
potValue = analogRead(A0); // reads the value of the potentiometer (value between 0 and 1023)
potValue = map(potValue, 0, 1023, 0, 180); // scale it to use it with the servo library (value between 0 and 180)
ESC.write(potValue); // Send the signal to the ESC
}
Silnik:
Silnik ABC-Power A2212 1400KV 2-3S
Napięcie zasilające: 11,1V 2- 3S lipo ; 6-10 NiMh
Maksymalna wydajność prądowa: 6-12A (>75%)
Pobór prądu obciążenia 10V: 0.5A
Max watt: 180W
Prąd maksymalny: 16A / 60s
Wewnętrzny opór: 65 mΩ
Wymiary silnika: 27,5x30(mm)
Rozstaw śrub mocujących: 16mm x 19mm
Zalecana waga modelu: 300 - 800g
Zalecane minimalne ESC: 20A
Wał: 3,17mm
Masa: 47g
Ciąg max: 940g
Zalecane śmigło: 8045
Zamienna ośka do silnika A2212
Regulator obrotów:
ESC ABC-Power Air 30A 2-3S - BEC 1A - Prosty regulator silników samolotowych
Stały prąd 30A - Max 40A (poniżej 10 sek.)
2-3S LiPol; 5-9 ogniwa Ni-MH
Auto niska redukcja mocy baterii na 3,0V / ogniwo, odcięcia na 2.9V / ogniwo (Lipo)
Programowalne odcięcie z tytulu niskiego napięcia (Lipo lub NiCd / NiMH)
Auto wyłączanie jeśli utracono sygnał
Ustawienie hamulca programowane przez użytkownika (on / off)
Auto nauka zakresu przepustnicy
Auto-timing
Max RPM: 40,000 RPM
Niska rezystancja
8 kHz PWM (modulacja szerokości impulsu)
BEC: 1A, Liniowy
Wymiary: 51x25x8,7 (mm)
Waga: 22g

Piszę do was tutaj z problemem odnośnie sterowania silnika BLDC.
Poniżej załączam wszystkie parametry do elementów.
Potrzebuję na studiach uzyskać pełen zakres obrotowy silnika aby wyznaczyć charakterystykę. Problem w tym że pomimo wielu prób z ustawieniami sterownika ESC oraz zmianach w programie na Arduino nie mogę sprawić aby silnik zaczął pracować od możliwie niskich obrotów.
Do sterowania używam potencjometru 10kohm podłączonego do arduino. Na wyjściu PWM jest podłączony sterownik według schematu.

Mimo zmian w programie na mniejszą ilość pulsów i dobrze wyskalowanego zakresu potencjometru, silnik od razu rusza od w miarę wysokich obrotów około 3tys. Płynna regulacja oczywiście działa w zakresie od tych 3tys do pełnych obrotów silnika. Zależy mi jednak aby te obroty były stosunkowo małe t.z.n w granicach od 0-max albo przynajmniej od 500obr-max a nie jak w tym momencie od jakiejś dziwnej prędkości.

Czy problem jest w samym sterowniku, że np jest przeznaczony do modeli latających ?
Co mogę zmienić ?
Bardzo proszę o pomoc

Program używany przeze mnie:
#include <Servo.h>
Servo ESC; // create servo object to control the ESC
int potValue; // value from the analog pin
void setup() {
// Attach the ESC on pin 9
ESC.attach(9,1000,2000); // (pin, min pulse width, max pulse width in microseconds)
}
void loop() {
potValue = analogRead(A0); // reads the value of the potentiometer (value between 0 and 1023)
potValue = map(potValue, 0, 1023, 0, 180); // scale it to use it with the servo library (value between 0 and 180)
ESC.write(potValue); // Send the signal to the ESC
}
Silnik:
Silnik ABC-Power A2212 1400KV 2-3S
Napięcie zasilające: 11,1V 2- 3S lipo ; 6-10 NiMh
Maksymalna wydajność prądowa: 6-12A (>75%)
Pobór prądu obciążenia 10V: 0.5A
Max watt: 180W
Prąd maksymalny: 16A / 60s
Wewnętrzny opór: 65 mΩ
Wymiary silnika: 27,5x30(mm)
Rozstaw śrub mocujących: 16mm x 19mm
Zalecana waga modelu: 300 - 800g
Zalecane minimalne ESC: 20A
Wał: 3,17mm
Masa: 47g
Ciąg max: 940g
Zalecane śmigło: 8045
Zamienna ośka do silnika A2212
Regulator obrotów:
ESC ABC-Power Air 30A 2-3S - BEC 1A - Prosty regulator silników samolotowych
Stały prąd 30A - Max 40A (poniżej 10 sek.)
2-3S LiPol; 5-9 ogniwa Ni-MH
Auto niska redukcja mocy baterii na 3,0V / ogniwo, odcięcia na 2.9V / ogniwo (Lipo)
Programowalne odcięcie z tytulu niskiego napięcia (Lipo lub NiCd / NiMH)
Auto wyłączanie jeśli utracono sygnał
Ustawienie hamulca programowane przez użytkownika (on / off)
Auto nauka zakresu przepustnicy
Auto-timing
Max RPM: 40,000 RPM
Niska rezystancja
8 kHz PWM (modulacja szerokości impulsu)
BEC: 1A, Liniowy
Wymiary: 51x25x8,7 (mm)
Waga: 22g