Witam
Zrobiłem prosty sterownik silnika zależnie od położenia potencjometru, coś a’la servo. Sygnał z ADC przeliczyłem na procenty bo wykorzystuję zakres od 25ADC do 255ADC(8 bit), tak jest dobrze i to jest ok.
Rzecz w tym, że chciałbym sterować silnikiem w zakresie wypełnienia pwm-a od 120 do 230. Niestety sterowanie silnikiem przez pwm nie może być liniowe, 50% zakresu z potencjometru to ok 70-80% wypełnienia. Zrobiłem więc tak, że wartością procentowym z potencjometru przypisuje dane z tabelki w której mam stałe wartości pwm-a i tu zrobił się dla mnie problem z wypełnieniem tabelki. Chciałem wykorzystać kalkulator Mirka do korekty Gamma z mkAVRCalculator, niezwykle wygodne narzędzie. Niestety wygięcie osi jest nie właściwe, mkAVRCalculator „robi” taką jakby funkcję wykładniczą a ja potrzebuję bardziej logarytmiczną. Tak, tak wiem mogę sobie w Exelu zrobić funkcję logarytmiczną itd… itd. ale coś kaszanie albo nie wiem co bo straciłem wczoraj cały wieczór i nic mądrego nie zrobiłem. Pewnie dlatego, że jak było o tym w szkole to byłem chory, albo że było to już strasznie dawno temu.
Podpowiedzcie proszę jak to zrobić, chciałem żeby tabelka miała 100 punktów więc ręczne pisanie to raczej nie najlepszy pomysł. W mkAVRCalculator jest to super zrobione bo wybieram sobie „rozdzielczość” czyli moje 100 punktów, a „gamma factor” modyfikuję kształt funkcji. Tak jest super tylko nie tę stronę wygięcie.