gozdd pisze: ↑29 lis 2020, 14:14
Jeśli silnik jest włączony to każde zadziałanie czujnika, to obrót talerza o jedno narzędzie. I właśnie w ten sposób aktualizuję wartość MagPos.
Nie ma też żadnego ryglowania talerza. Cofanie silnika to po prostu obrót talerzem w drugą stronę.
no ja nie wiem jak to działa wiec i wytykać nie mogę.
Ale z tego co napisałeś nie wynika że wiadomo które narzedzie jest na pozycji MagPos. Bo zamiast ją odczytać to ją w pętli wyliczasz.
Miałoby to sens gdybyś na starcie jakoś ustawiał że zawsze tarcza jest =1 lub wpisywał wartość MagPos do idącego makra.
A teraz masz tak że startuje makro które co pozycję ( bo krzywka) zmienia wartość MagPos
od wartości nieokreślonej, możliwe że pustej
A czy za każdym wywołaniem zmiany narzędzia MagPos ma wartość z poprzedniego wywołania makra? Po zakończeniu zmienna może stracić wartość ( bo jest lokalna i nie jest przechowywana)
Dopisz sobie komórkę (pole licznikowe) na ekranie gdzie na zakończenie makra będziesz zapisywał pozycję magazynu. Natomiast na początku wymiany odczytasz z tego pola wartość poprzednio zapisaną i w ten sposób nie stracisz pozycji magazynu.
Dodatkowo takie pole jest edytowalne więc po włączeniu Macha możesz wpisać aktualną pozycję talerza narzędziowego.
Choć lepszym rozwiązaniem jest wprowadzenie kilku krańcówek które zakodowane podawałyby wprost nr narzędzia w talerzu (dla 16 narzędzi potrzebne są 4 krańcówki)