Ostatnio zmontowałem stanowisko szkoleniowe S71200 + Falownik SEW sterowany po profinecie. Napisałem program i zrobiłem wizualizację przemieszczającej się jednostki
"Jednostka" może przemieszczać się pomiędzy pozycjami 0-10, pomiędzy każdą jednostką jest 5050 podzielonych już przez odpowiednią wartość impulsów z enkodera. Jak widać na powyższym obrazku przy dojechaniu na pozycję 2 mamy 10330 impulsów, a powinno być 10100. Zmodyfikowałem program, żeby 300 impulsów przed pozycją docelową zmienił prędkość na mniejszą, ale tez to nie dużo dało.
Pomyślałem, żeby spróbować użyć PID, z którym nie miałem wcześniej styczności i niestety sugerując się tym o czym wyczytałem, wyskakują mi błędy, dlatego chciałbym poprosić o pomoc w koniguracji PID
Setpoint to pozycja docelowa
input to pozycja z enkodera
Output to wyjście, czyli podejrzewam prędkość zadawana na falownik. Tu właśnie zastanawiam się jaka to będzie wartość, którą później przeskaluję na prędkość falownika (na razie cały czas to 0)
Poniżej już się zastanawiam, czy 50050.0 to nie za dużo bo taką wartość ma pozycja 10.
Czy ktoś z kolegów mógłby mnie naprowadzić czy dalsze dane też powinienem parametryzować, czy może powinienem zmniejszyć (skalując) odczyt enkodera. Blok PID jest w OB30 wywoływany co 1ms