1

Temat: Ruch ukośny, język ST

Witam. Jak w języku ST spowodować, by kulka poruszała się ruchem ukośnym, jeśli poz_x, to określona pozycja kulki na osi x, poz_y to określona pozycja kulki na osi y, a speed to określona prędkość kulki. Przykładowo ruch po osi x wygląda tak w programie:

IF poz_x<320 AND poz_y=0
THEN
poz_x:= poz_x+speed;

po osi y:

ELSIF poz_y>-150 AND poz_x=320
THEN
poz_y:= poz_y-speed;

Jak wygląda w takim razie ruch po skosie? Proszę o pomoc.

proszę używać znacznika code przy wpisywania kodu programu !
Alex

2

Odp: Ruch ukośny, język ST

spróbuj tak

VAR_GLOBAL
    x: INT :=1;
    px: INT := 1;
    y: INT := 1;
    pY: INT := 1;
END_VAR
x:=x+px;
y:=y+pY;
IF x>100 OR x<-100 THEN
px:=px*-1;
END_IF
IF Y>100 OR Y<-100 THEN
pY:=pY*-1;
END_IF

porusza się i odbija od krawędzi przedziałów określonych w if


proszę używać znacznika code przy wpisywania kodu programu !
Alex

3

Odp: Ruch ukośny, język ST

pisz proszę na forum !
a co do kodu
kod jest ok ale napisz jaki ruch cię interesuje jeśli zrobisz to w zmiennych real to możesz zrobić dowolny skos
więc x y pozycja porządkowa
x>.... or x<....  y>.... or y<....  zakres ruchu "odbicie"
px py wartości dodawana lub odejmowana "skos"
jeśli ruch ma być od x1y1 do x2y2 to dla px=x1-x2/y1-y2 i na odwrót albo użyj funkcji trafo z strony codesys.pl dział download

4 (edytowany przez Oweeen 2011-12-18 00:16:38)

Odp: Ruch ukośny, język ST

Ok spoko i sorry. Jakoś to wymyśliłem i leci. Teraz została mi ta trudniejsza część. Muszę jakoś zaprogramować przycisk, który będzie tę kulkę startował żeby się poruszała i zatrzymywał po kolejnym kliknięciu. Ruch zapisałem w taki sposób:

ELSIF poz_x>620 AND poz_x<780
THEN
poz_y:=poz_y-speed;
poz_x:=poz_x+5*speed;
END_IF;

5

Odp: Ruch ukośny, język ST

więc
kod:

if praca then 
ELSIF poz_x>620 AND poz_x<780
THEN
poz_y:=poz_y-speed;
poz_x:=poz_x+5*speed;
END_IF;

a przyciskiem jest dowolna figura geometryczna z wizualizacji

w konfiguracji wybierz wpisywanie i przełącz zmienną  tam wpisz praca
mniej więcej tyle, nie wiem tylko czy będzie pracować bistabilne bo pisze z głowy sprawdź po prostu

6

Odp: Ruch ukośny, język ST

Przyciskiem ma być button. Masz polską wersję CodeSysa? Ja mam po angielsku i ciężko w sumie mi znaleść dokładnie to miejsce o którym mówisz. Configure potem variables tak?

7

Odp: Ruch ukośny, język ST

Witam mam problem:
Jak w języku ST zrobić, żeby kulka poruszała się ruchem okrężnym.
Błagam o pomoc !!


Notka Admina: /przeniesiony i połączony wątek/

8

Odp: Ruch ukośny, język ST

sin i cos funkcja