eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikastara pamięć nie rdzewiejeRe: stara pamięć nie rdzewieje
  • Data: 2014-06-02 20:35:38
    Temat: Re: stara pamięć nie rdzewieje
    Od: Mario <m...@...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu 2014-06-02 13:21, Piotrne pisze:
    > W dniu 2014-06-02 00:47, Mario pisze:
    >
    >> Możesz to ominąć stosując cewki -(S)- i -(R)-
    >> W dodatku nie rozumiem po co po kroku 4 wprowadzasz krok 5 będący przejściem na
    kroku 1 - szukania
    >> pozycji krańcowej skoro w kroku 4 dojechał do pozycji krańcowej.
    >
    > To była uproszczona ogólna koncepcja. Po kroku 4 jeszcze były
    > różne testy poprawności wykonania innych elementów procesu.
    >
    > Natomiast numerowanie stanów nie było takie proste. Dla każdego
    > stanu przewidziany był oddzielny bit ("przekaźnik"), który
    > włączał się i wyłączał w odpowiednim momencie. Czyli jeśli
    > maszyna ma 100 stanów, to zamiast jednego licznika 7-bitowego
    > potrzeba 100 oddzielnych bitów - "przekaźników".

    Rozumiem, że numerowanie nie było proste bo ktoś postanowił żeby nie
    było proste. Ja tam numeruję stany w zmiennej int.


    > S oraz R też tam wielokrotnie używałem. Ale wciąż nie widzę
    > możliwości uproszczenia takiego programu i spowodowania, żeby był
    > bardziej czytelny.

    Jak się człowiek nie zna na LD to może nie wydaje się czytelny.
    Oczywiście gdy silnik załączasz w danym kierunku przy kilku różnych
    wartościach stanu i jeszcze przy spełnieniu jakichś innych warunków to
    może być mało czytelne złożenie tego w jeden rozkaz sterujący silnikiem.
    Ale możesz sobie zdefiniować kilka komórek typu MotorLeft1, MotorLeft2
    itd. Sterujesz je jako cewki w kolejnych stanach gdy trzeba wysterować
    silnik w lewo. A potem tylko załączasz wyjście fizycznie sterujące
    silnikiem jako sumę logiczną wspomnianych komórek. Niby
    trochępokombinowane ale z drugiej strony jak ci się załącza silnik to
    widzisz z jakiego powodu.
    Ja tam lubię LD w sterowaniu ruchem. Widzisz stan wejścia sterującego
    ruchem, stan czujki np krańcowej, przeciążenia, błędu hamulca czy
    falownika. Wszystko w jednej linii sterującej np danym kierunkiem.

    Nie pisałem wcześniej w LD, ale tu akurat
    > innej możliwości nie było. Miałem tylko darmowe narzędzia.
    > Może istnieją jakieś bardziej przyjazne dla programisty
    > konwertery "normalnych" programów do LD? Bo to wyglądało
    > jak np. pisanie mikroprogramów wykonujących instrukcje CPU...

    LD można konwertować do Instruction List. Ten to dopiero wygląda jak
    asembler. Jeszcze w dodatku zapis sugeruje, że wrzucasz na stos w
    odpowiedniej kolejności rozkazy typu LD, ADD, MUL, AND i zmienne.
    Czujesz się jakbyś programował kalkulator programowalny HP z odwrotną
    notacją polską.
    Do programów sekwencyjnych jest specjalny język Sequential Flow Chart.
    Przyznam, że kilka razy próbowałem, ale wygodniej mi się robi to w LD.
    Kiedyś całe algorytmy robiłem w ST, ale okazało się, że jego odpowiednik
    w STEP7 - SCL ma na tyle inną składnię, że czułem się niekomfortowo
    gdy przechodziłem z projektu na Schneidera na Siemensa i z powrotem. Tak
    wiec teraz robię część pomiarową i obliczenia w ST a zwykłe sterowanie w
    LD.



    --
    pozdrawiam
    MD

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: