Sterowanie silnikiem BL przy użyciu potencjometru - pomysł

Autorskie projekty naszych użytkowników

Moderatorzy: marbalon, moderatorzy2014, moderatorzy

Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Sterowanie silnikiem BL przy użyciu potencjometru - pomysł

Post autor: dubik3e »

Cześć,
Potrzebuje zrobić sterowanie do silnika/regulatora w taki sposób aby:

-zakres potencjometru od 0% do 100% sterował silnikiem do przodu/w jednym kierunku
-tym samym potencjometrem można było sterować silnikiem też od 0% do 100% do tyłu/w drugim kierunku
-zmiana kierunku pracy od 0-100 do przodu oraz od 0-100 do tyłu, odbywała się za pomocą przełącznika dwupozycyjnego

Pytanie teraz do Was, jakie macie pomysły na rozwiązanie tego zadania?
Mi przyszło do głowy:

-zamiana przewodów do silnika (krzyżowanie) za pomocą przełącznika. Minus tego rozwiązania, że urządzenie przeplatające fazy, musiałoby mieć możliwość dużej obciążalności (zasilanie silnika z reglem 7s lipo, prąd maksymalny 80A)
-skorzystanie z jednego z arduino, „zczytanie” sygnału z potencjometru, a następnie tak zaprogramowanie arduino, że w pierwszej pozycji przełącznika daje sygnał na regiel od 0-50% mimo, pracy potencjometru 0-100%, a po przełączeniu przełącznika w druga pozycję arduino daje sygnał od 51-100% przy pracy potencjometru 0-100%. Minus: Sam nie zaprogramuje arduino :)

Regulator oczywiście jest dwukierunkowy/samochodowy.
Awatar użytkownika
Verid
Posty: 13004
Rejestracja: poniedziałek 01 lut 2010, 11:29
Lokalizacja: Mikoszewo

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: Verid »

Serwo tester podłączony do regla załatwi ci sterowanie potencjometrem. I teraz, teoretyzując nieco - w starych aparaturach rewers można było zrealizować przez mechanicznie odwrócenie wtyczki potencjometru. Zatem mógłbyś zrobić kalibracje regla tak że w przód jest pełen zakres potencjometru w jedną stronę a do kalibracji w tył przełącznikiem odwracasz wtyczkę. W ten sposób powinieneś oszukać regiel że center jest na minimum potencjometru a przełącznikiem zmieniasz zakres na jakby to ująć - "ujemny" - czyli po przestawieniu przełącznika regiel będzie kręcił w tył mimo ruchu potencjometru w ta sama stronę...
Ten wredny...
PiotrC
Posty: 202
Rejestracja: niedziela 06 sty 2013, 12:56
Lokalizacja: Częstochowa

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: PiotrC »

albo przełącznik na 2 z 3 przewodów między reglem a silnikiem
Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: dubik3e »

Mając na myśli potencjometr, myślałem o serwo testerze. Pomysł z odwrotnym podłączeniem potencjometru do serwo testera byłby łatwy do zrealizowania, natmiast czy w takim wypadku nie dostalibyśmy tej samej skali tylko w odwrotnym kierunku, czyli:

W pierwszym położeniu pinów potencjometru od lewej do prawej od 1000us do 2000us

W drugim położeniu pinów potencjometru od lewej do prawej od 2000us do 1000us


W apce masz (oprócz throthle) drążki w pozycji centralnej (1500us) i tylko zmienia się kierunek przyrastania wartości. Wydaje mi się, że właśnie taka sytuacja byłby w Twoim opisie.


PiotrC pisze:albo przełącznik na 2 z 3 przewodów między reglem a silnikiem
tak jak wcześniej pisałem, przełącznik musiałby mieć wysoką obciążalność prądową.
Awatar użytkownika
Verid
Posty: 13004
Rejestracja: poniedziałek 01 lut 2010, 11:29
Lokalizacja: Mikoszewo

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: Verid »

dubik3e pisze:czy w takim wypadku nie dostalibyśmy tej samej skali tylko w odwrotnym kierunku
Fakt - może tak się stać choć HGW jak się zachowa regiel przy kalibracji.
A może ten przełącznik niech przełącza jakiś dzielnik raz na jedna stronę raz na drugą żeby poti miał w jednej pozycji 1500-2000 a w drugiej 1000-1500...? Elektronik ze mnie żodyn - na logikę kombinuję...
Ten wredny...
Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: dubik3e »

Verid pisze:
dubik3e pisze:czy w takim wypadku nie dostalibyśmy tej samej skali tylko w odwrotnym kierunku
Fakt - może tak się stać choć HGW jak się zachowa regiel przy kalibracji.
A może ten przełącznik niech przełącza jakiś dzielnik raz na jedna stronę raz na drugą żeby poti miał w jednej pozycji 1500-2000 a w drugiej 1000-1500...? Elektronik ze mnie żodyn - na logikę kombinuję...
Dobry pomysł, ale chyba nie koniecznie łatwy do wykonania. Pomyślę jak wrócę do domu.
Awatar użytkownika
pawelsky
Posty: 9750
Rejestracja: środa 19 mar 2014, 02:03
Lokalizacja: Polska
Kontakt:

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: pawelsky »

A nie prosciej zastosowac dwukierunkowe ESC? Z tego co wiem to zarowno firmware BLHeli jaki i SimonK maja juz teraz taka opcje.
Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: dubik3e »

pawelsky pisze:A nie prosciej zastosowac dwukierunkowe ESC? Z tego co wiem to zarowno firmware BLHeli jaki i SimonK maja juz teraz taka opcje.
W pierwszym poście tego tematu na samym dole napisałem ze regiel jest dwu kierunkowy. Problem dotyczy tego aby testerem serw mając ruch od 0 do 100 raz móc sterować silnikiem do przodu raz do tyłu.
Awatar użytkownika
pawelsky
Posty: 9750
Rejestracja: środa 19 mar 2014, 02:03
Lokalizacja: Polska
Kontakt:

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: pawelsky »

dubik3e pisze:W pierwszym poście tego tematu na samym dole napisałem ze regiel jest dwu kierunkowy. Problem dotyczy tego aby testerem serw mając ruch od 0 do 100 raz móc sterować silnikiem do przodu raz do tyłu.
Racja, przegapilem.

No to w czym problem? Laczysz potencjometr w serwo-testerze w szereg z rezystorem o takiej samej opornosci i przelacznikiem zamieniasz skrajne bieguny.
Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: dubik3e »

pawelsky pisze:
dubik3e pisze:W pierwszym poście tego tematu na samym dole napisałem ze regiel jest dwu kierunkowy. Problem dotyczy tego aby testerem serw mając ruch od 0 do 100 raz móc sterować silnikiem do przodu raz do tyłu.
Racja, przegapilem.

No to w czym problem? Laczysz potencjometr w serwo-testerze w szereg z rezystorem o takiej samej opornosci i przelacznikiem zamieniasz skrajne bieguny.

O czymś takim myślisz?

Obrazek
Awatar użytkownika
pawelsky
Posty: 9750
Rejestracja: środa 19 mar 2014, 02:03
Lokalizacja: Polska
Kontakt:

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: pawelsky »

dubik3e pisze:O czymś takim myślisz?
Tak, zamiast rezystora mozesz dac precyzyjny potencjometr, zeby lepiej skalibrowac srodek.
Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: dubik3e »

pawelsky pisze:
dubik3e pisze:O czymś takim myślisz?
Tak, zamiast rezystora mozesz dac precyzyjny potencjometr, zeby lepiej skalibrowac srodek.

Czyli podsumowując, wylutować potencjometr z serwo testera, sprawdzić jego rezystancje w największym położeniu i znaleźć w sklepie rezystor o tej rezystancji bądź precyzyjny potencjometr, który potrafi odwzorować tą rezystancję i wpiąć ten rezystor/potencjometr precyzyjny w obojętnie którą, zewnętrzną nogę potencjometru. Na koniec dodać przełącznik dwu pozycyjny dwu liniowy przeplatający zewnętrzne nogi potencjometru z serwo testera?
Awatar użytkownika
pawelsky
Posty: 9750
Rejestracja: środa 19 mar 2014, 02:03
Lokalizacja: Polska
Kontakt:

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: pawelsky »

dubik3e pisze:Czyli podsumowując, wylutować potencjometr z serwo testera, sprawdzić jego rezystancje w największym położeniu i znaleźć w sklepie rezystor o tej rezystancji bądź precyzyjny potencjometr, który potrafi odwzorować tą rezystancję i wpiąć ten rezystor/potencjometr precyzyjny w obojętnie którą, zewnętrzną nogę potencjometru. Na koniec dodać przełącznik dwu pozycyjny dwu liniowy przeplatający zewnętrzne nogi potencjometru z serwo testera?
Zanim sie zabierzesz za zakupy sprawdzilbym jeszcze na jakim ukladzie zbudowany jest serwo-tester, zeby sie upewnic ze takie rozwiazanie bedzie OK.
Awatar użytkownika
dubik3e
Posty: 248
Rejestracja: wtorek 15 maja 2012, 19:30
Lokalizacja: Olsztyn

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: dubik3e »

Posiadam dwa serwo testery:

http://www.hobbyking.com/hobbyking/stor ... ester.html

http://www.hobbyking.com/hobbyking/stor ... ester.html

ale niestety żadnego pod ręka, wiec nie zajrzę do środka. Dopiero w niedziele mógłbym to sprawdzić.
Awatar użytkownika
pawelsky
Posty: 9750
Rejestracja: środa 19 mar 2014, 02:03
Lokalizacja: Polska
Kontakt:

Re: Sterowanie silnikiem BL przy użyciu potencjometru - pom

Post autor: pawelsky »

dubik3e pisze:Posiadam dwa serwo testery:

http://www.hobbyking.com/hobbyking/stor ... ester.html

http://www.hobbyking.com/hobbyking/stor ... ester.html

ale niestety żadnego pod ręka, wiec nie zajrzę do środka. Dopiero w niedziele mógłbym to sprawdzić.
To dla pewnosci pewnie lepiej kupic potencjometr i rezystor o polowe mniejsze, tak zeby w sumie mialy taka sama rezystancje jak oryginalny potencjometr.

Tudziez zaopatrzyc sie w Arduino Nano, potencjometr i przelacznik. Kod do tego to bedze doslownie kilka linijek.

EDIT: Cos w tym stylu (pisane z reki nie sprawdzalem czy sie kompiluje)

Kod: Zaznacz cały

#include <Servo.h>

Servo myservo;

#define potPin    0
#define switchPin 8
#define servoPin  9

int potVal;
int switchVal;

void setup() {
  pinMode(potPin, INPUT);
  pinMode(switchPin, INPUT_PULLUP);
  myservo.attach(servoPin);
}

void loop() {
  potVal = analogRead(potPin);
  switchVal = digitalRead(switchPin);
  if(switchVal == LOW)
    potVal = map(potVal, 0, 1023, 1500, 1000);
  else
    potVal = map(potVal, 0, 1023, 1500, 2000);
  myservo.writeMicroseconds(potVal);
}
Serwo podpinasz do pinu 9, +5V i GND, przelacznik do 8 i GND, potencjometr do pinu analogowego A0, +5V i GND
ODPOWIEDZ