-
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
Następne wpisy z tego wątku
- 03.06.14 01:41 Piotrne
- 03.06.14 15:37 Mario
- 03.06.14 16:22 Tomasz Wójtowicz
Najnowsze wątki z tej grupy
- Prośba o identyfikację komponentu
- Smart gniazdko straciło na zasięgu wifi?
- Smart gniazdko straciło zasięg wifi?
- nurtuje mnie
- dziwna sprawa...
- Laptop MSI się nie uruchamia.
- Dobra listwa LED (CRI 90-95, bez migotania)
- masowe programowanie AVR
- Fajny pomysł na monitor z klawiaturą
- Sprzedawanie zaszyfrowanych filmów na płytach Blu-Ray bez kluczy deszyfrujących
- Aparat, zewnętrzny mikrofon, brum
- Wieszanie się przy aktywnym SMP
- Prognozowanie zużycia energii przez PGE?
- Odkurzacz mnie bije :(
- Rapsberry Pi i synchronizacja plików
Najnowsze wątki
- 2024-10-18 Pożar parkingu w Luton
- 2024-10-18 Łódź => Spedytor Międzynarodowy <=
- 2024-10-18 Gdańsk => Technical Lead ( (Java Background)) <=
- 2024-10-18 Warszawa => Head of International Freight Forwarding Department <=
- 2024-10-18 uwazajmy na haczyki w umowach
- 2024-10-18 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-10-18 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-10-18 Gdańsk => Software .Net Developer <=
- 2024-10-18 Warszawa => Junior Rekruter <=
- 2024-10-18 Warszawa => Key Account Manager <=
- 2024-10-18 Przeróbka na zgrzewarkę "równoległą"
- 2024-10-18 Ostrów Wielkopolski => Laravel PHP Developer <=
- 2024-10-18 Warszawa => Data Scientist / Data Engineer (modele predykcyjne) <=
- 2024-10-18 doładowania 5zł
- 2024-10-17 Prośba o identyfikację komponentu