Miesięcznik Murator ONLINE

Skocz do zawartości

Programowalne instalacje elektryczne - wątek dla entuzjastów


Recommended Posts

PS. A tak bardziej w szczegółach możesz opisać w jaki sposób definiujesz "harmonogram podlewania" i jak go w PLC weryfikujesz? Chodzi mi bardziej o bebechy, bo chciałbym porównac nieco moje pomysły. Mi wyszło, że do pojedynczego "programu podlewania" potrzebuję 5 słów (10 bajtów): miesięcy, dni, godzin i minut startu i stopu (po jednym bajcie na każdą wartość, czyli razem 8bajtów, czyli 4słowa) oraz 1 słowo na wskazanie sekcji, których dany program dotyczy (co daje automatycznie obsługę maks 16 sekcji). pozostaje problem jak w sterowniku szybko i wygodnie zweryfikować, które programy są aktywne, albo raczej ustalić po prostu porządany (na dany moment) stan każdej sekcji. Na razie użyłem tu funkcji 112 (BKCMP) i 18 (AND), ale to trochę dużo markerów m zjada. Alternatywą jest użycie np. funkcji 37 (ZNCMP), ale wtedy wypada zrobić już pętlę FOR, a to troszkę upierdliwe. Dla dużej liczby programów nie znalazłem jak na razie lepszej metody (ja celuję w minimum 32 programy, co przy tych maks 16 sekcjach da raptem dwa wpisy na sekcję).

 

Pisałem w czasie przyszłym, ledwo skończyłem montować, i to pierwszą sekcję.

A aktualnie mam nawadnianie za free z nieba :)

Intensywnie pracuję nad dokończeniem tego.

 

Czyli rozumiem, że Twój program ma być typu:

od 3 marca do 15 maja sekcję nr 1,2,3 podlewaj od 05:00 do 05:20,

od 16 maja do 31 maja sekcję nr 1,2 podlewaj od 05:00 do 05:30,

 

Harmonogram robiłem dla symulacji obecności, więc myślę go przystosować. Wygląda to tak:

MOV S:0 D:V

FOR 10 (liczba rekordów w tablicy)

ZNCMP S:R4135 Su: R5001V Sl: R5000V => i to ustawia odpowiednią flagę M, która potem czymś steruje

(+) Sa: 2 Sb:V D:V

NEXT

R4135 to godziny i minuty z RTC.

W tablicy rejestrów od R5000 mam po dwa słowa oznaczające czas od-do (tak samo jak to jest zapisane w R4135), czyli po 4 bajty na wpis.

Rozszerzenie tego o porównanie zakresu dat dodatkowo nie powinno być problemem i powinno działać równie sprawnie (dodatkowe ZNCMP na porównanie dat, porównanie godzin zależne od wyniku porównania dat, odpowiednie przesuwanie rejestru V, sprawdzenie sekcji). Ja bym zrobił jednak sekcje osobno, dla każdej niezależny harmonogram (dodatkowa pętla FOR) - łatwiej będzie zapanować nad tym, skoro ich programy mają się różnić. Chyba, że nieznacznie. Albo zakres dat wspólny, następnie dla wszystkich sekcji kolejno czas startu i zatrzymania lub po prostu czas trwania (a pewnie będą uruchamiane kolejno, można to sobie pododawać w pętli) .

Nad BKCMP się nie zastanawiałem - przemyślę.

Edytowane przez civic9
Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 3,6k
  • Utworzony
  • Ostatnia odpowiedź

Najaktywniejsi w wątku

Najaktywniejsi w wątku

Dodane zdjęcia

Secundo - wydaje się niemożliwe, aby Win7 chodził na tym samym sprzęcie SZYBCIEJ niż XP, chociażby z powodu poniższego

Ależ chodzi, w końcu to dużo nowszy system - pod warunkiem, że nie brakuje mu zasobów. W ogóle czas instalacji wystarczy porównać - pod wirtualną maszyną XP mi się instaluje ponad godzinę, a Windows 7 kilkanaście minut. Czas uruchomienia - Windows 7 - kilkanaście sekund, XP - dłuugie dziesiątki sekund. Oczywiście na pewno da się znaleźć konfigurację (z małą ilością ramu głównie), na której Windows 7 nie rozwinie skrzydeł i będzie mulić, a Windows XP jakoś pójdzie. Ale ram jest tani, po co się męczyć.

 

Co do reszty: Nie chcę być adwokatem Windowsa, ale piszesz i oceniasz system wydany w roku 2001 a projektowany i implementowany w jeszcze dużo wcześniej. Porównujesz z Linuxem z dnia dzisiejszego zapewne.

Odnośnik do komentarza
Udostępnij na innych stronach

Osobiście (prywatnie) nie używam 64-bitowych wersji jakichkolwiek systemów operacyjnych, bo... szkoda mi RAMu. 64-bity są w większości zastosowań praktycznie pomijalnie szybsze (w granicach błędu pomiaru), cała pamięć jest osiągalna dla jądra także na 32-bitach, jedyny problem powstaje kiedy pojedynczy proces chce zaalokować więcej niż 2GB ramu. Ale to się może zdarzyć w zasadzie tylko w przypadku maszyn wirtualnych, oraz baz danych. Za to używając wersji 64-bitowej absolutnie wszystkie programy zużywają więcej pamięci niż w przypadku swoich buildów 32-bitowych. Poza tym nie mam w domu ani jednej maszyny, która miała by więcej niż 2GB ramu ;-) Mój wirtualizowany WindowsXP działa na 512MB ramu i da się go użyć w tym stanie do zaprogramowania Fateka, czy Integry.
Odnośnik do komentarza
Udostępnij na innych stronach

Czyli rozumiem, że Twój program ma być typu:

od 3 marca do 15 maja sekcję nr 1 podlewaj od 05:00 do 05:20,

od 16 maja do 31 maja sekcję nr 1 podlewaj od 05:00 do 05:30,

i tak dalej dla każdej sekcji?

 

Mniej więcej tak, tyle że do każdego takiego wpisu jest dodana jeszcze lista sekcji, która ma w tym czasie działać. Moje źródło wody jest wystarczająco wydajne bym mógł pociągnąć niektóre sekcje równocześnie, co wcale nie znaczy, że zawsze chcę by pracowały tak samo długo.

 

Harmonogram robiłem dla symulacji obecności, więc myślę go przystosować. Wygląda to tak:

MOV S:0 D:V

FOR 10 (liczba rekordów w tablicy)

ZNCMP S:R4135 Su: R5001V Sl: R5000V => i to ustawia odpowiednią flagę M, która potem czymś steruje

(+) Sa: 2 Sb:V D:V

NEXT

R4135 to godziny i minuty z RTC.

W tablicy rejestrów od R5000 mam po dwa słowa oznaczające czas od-do (tak samo jak to jest zapisane w R4135), czyli po 4 bajty na wpis.

Rozszerzenie tego o porównanie zakresu dat dodatkowo nie powinno być problemem i powinno działać równie sprawnie (dodatkowe ZNCMP na porównanie dat, porównanie godzin zależne od wyniku porównania dat, odpowiednie przesuwanie rejestru V). Dodatkowa pętla na obsługę osobnych sekcji.

Nad BKCMP się nie zastanawiałem - przemyślę.

 

No to jest mniej więcej to samo podejście, które opisałem jako rozpatrywane alternatywnie. Ma tą zaletę, że nie "marnuje" markerów (flag M), bo można dla każdego "programu" kolejno podejmować od razu decyzję. BKCMP zapisuje wynik działania od razu do serii markerów (tylu ile zakresów porównuje), czyli w skrócie tylu ile jest "harmonogramów". W moim wypadku to oznacza zużycie ponad 300 markerów, zanim będzie można próbować weryfikować wyniki, no a to wydaje się "trochę" rozrzutne. Choć może jak dodam sobie przenoszenie danych "chwilowych" z markerów (M) do rejestrów ®, to nie będzie tak źle...

Odnośnik do komentarza
Udostępnij na innych stronach

Ale ram jest tani, po co się męczyć.

 

Tylko sprzęt, który obsłuży ponad 4 GB ramu do całkiem tanich nie należy (pomijam już fakt, że nie bardzo widzę sens takiej inwestycji). Gdybym miał 4GB zużyć na maszynę wirtualną to zanczy, że gospodarz musi mieć z 8GB ramu. Toć to monstrum. Spora część "moich" serwerów tyle nie ma... ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

ETH do Fateka nie brałem, bo wydawało mi się zbędne, ale jak widzę nie mam wyjścia.

Gdzieś się tutaj nie zrozumieliśmy.

Nie potrzebujesz ETH, ani więcej RAMu. Po co Ci to ETH w Fateku?

 

ETH w fateku i tak nie załatwia problemu WinProLaddera.

A ETH jest zbędne jeśli mamy blisko stojącego linuxa z jakąkolwiek ilością pamięci, bo on może robić za moduł ETH do fateka, co było przedstawione tutaj daaawno temu oraz stronę czy dwie wcześniej.

Odnośnik do komentarza
Udostępnij na innych stronach

Co do reszty: Nie chcę być adwokatem Windowsa, ale piszesz i oceniasz system wydany w roku 2001 a projektowany i implementowany w jeszcze dużo wcześniej. Porównujesz z Linuxem z dnia dzisiejszego zapewne.

 

Ej - w jakim 2001? Piszę głównie o Viście, która na rynek trafiła na początku 2007 r. (czyli akurat gdy instalowałem swojego pierwszego Ubuntu 7.10 które działało bez przerw aż do zeszłego roku, gdy moja Żona mechanicznie zniszczyła laptopa :) )! XP, poza niestabilnością, głupimi rozwiązaniami i ogólną topornością jeszcze daje się używać. A porównania, że XP na 1GB RAM i starym Athlonie chodzi wolniej, niż Win7 na 8GB i7 jest, wybacz, ale nieco bezsensowne.

 

ravbc - w sensie przydzielasz mu 512MB, czy cały system ma tyle?

 

Co do zużycia pamięci, to fakt że moje 64-bitowe Ubuntu potrafi POZORNIE zeżreć dużo, bo nawet i ponad 3GB (na 4), ale jest to w większości systemowe cache. Swap leży zupełnie odłogiem i naprawde nie wiem co myślał ktoś mówiąc, że na swap trzeba dawać 2x RAM :o Ale jak Linuxowi dać 1GB to sie zmieści w 1GB i nie wiem, czy faktycznie ma to duży związek z 32 i 64-bitowością. Muszę to sprawdzić, ale właśnie ostatnio odpaliłem LiveCD PinguyOS chyba w 64 bitach i zajmował poniżej 500 MB w trakcie oglądania filmu. Swap = 0.

Odnośnik do komentarza
Udostępnij na innych stronach

Gdzieś się tutaj nie zrozumieliśmy.

Nie potrzebujesz ETH, ani więcej RAMu. Po co Ci to ETH w Fateku?

 

Bo na górze mam komputer zdolny do uciągnięcia maszyny wirtualnej, tylko jakoś muszę go skomunikować z Fatekiem na dole.

 

Nie załatwia mi to jednak wciąż problemu z Integrą. Chyba tylko laptop będzie wyjściem. A to już są grube $$$.

Edytowane przez Depi
Odnośnik do komentarza
Udostępnij na innych stronach

Bo na górze mam komputer zdolny do uciągnięcia maszyny wirtualnej, tylko jakoś muszę go skomunikować z Fatekiem na dole.

No to po raz kolejny - do tego nie potrzeba modułu ETH.

Mały komputer przy fateku robi za moduł ETH (linux+socat/ser2net), a z dużego na górze się łączysz do tego - nie ma dla niego znaczenia czy do prawdziwego modułu ETH czy do pośredniczącego linuxa.

 

Nie załatwia mi to jednak wciąż problemu z Integrą. Chyba tylko laptop będzie wyjściem. A to już są grube $$$.

Rozwiązanie na Integrę jest to samo, tylko ponieważ oprogramowanie satela nie ma obsługi komunikacji po TCP to instalujemy HW Virtual Serial Port, który robi wirtualnego COMa i przekierowuje go w sieć. Tylko w tym wypadku (satelowym) jakoś mało stabilnie działa - czasem się nie chce połączyć, czasem zrywa. Oni jakoś fatalnie chyba oprogramowali w tej windowsowej aplikacji obsługę portu szeregowego. Ale do zaprogramowania raz w roku wystarczy.

Odnośnik do komentarza
Udostępnij na innych stronach

ETH w fateku i tak nie załatwia problemu WinProLaddera.

A ETH jest zbędne jeśli mamy blisko stojącego linuxa z jakąkolwiek ilością pamięci, bo on może robić za moduł ETH do fateka, co było przedstawione tutaj daaawno temu oraz stronę czy dwie wcześniej.

 

Fatekowe ETH jest czymś innym (albo nawet zupełnie czymś innym, w zależności czy mówimy o płytce, czy module) niż pokazywany tu "serial-over-net". No i faktycznie do WinProLoadera się nie przyda - programować Fateka można tylko przez port 0, a tego nie da się w żaden sposób "kupić jako ETH".

 

Fatekowy modul ETH (ten dołączany po lewej stronie jednostki cenralnej) może być za to dość przydatnym urządzeniem (choć masakrycznie drogim), bo to de facto bramka modbus RS485<=>TCP. Tj. dzięki temu można po TCP komunikować się ze wszystkim co "za nim" podpięte jest po RS485. Takie bramki oczywiście istnieją też "samodzielnie', ale ta ma tę zaletę, że daje dodatkowe porty modbusowe do Fateka. ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

ravbc - w sensie przydzielasz mu 512MB, czy cały system ma tyle?

 

Cała maszyna wirtualna dostaje 512MB ramu i musi się w tym zmieścić. Mój laptop, na którym to odpalam ma 2GB ramu i jest to najbardziej "wypasiona" maszyna jaką mam w domu ;-) no a musi poza wirtualnym Windowsem nadal obsługiwać mój linkusowy pulpit.

 

Co do zużycia pamięci, to fakt że moje 64-bitowe Ubuntu potrafi POZORNIE zeżreć dużo, bo nawet i ponad 3GB (na 4), ale jest to w większości systemowe cache. Swap leży zupełnie odłogiem i naprawde nie wiem co myślał ktoś mówiąc, że na swap trzeba dawać 2x RAM :o Ale jak Linuxowi dać 1GB to sie zmieści w 1GB i nie wiem, czy faktycznie ma to duży związek z 32 i 64-bitowością. Muszę to sprawdzić, ale właśnie ostatnio odpaliłem LiveCD PinguyOS chyba w 64 bitach i zajmował poniżej 500 MB w trakcie oglądania filmu. Swap = 0.

 

Tu się kilka wątków miesza. Po pierwsze: oprogramowania skompilowane na 64-bity musi zjadać więcej ramu niż to samo[\U] oprogramowanie, ale skompilowane na 32-biy, bo struktury danych są po prostu większe - najzwyklejszy INT, którego w praktycznie każdej aplikacji pełno, zajmuje 4 bajty na 32bitach i 8 bajtów na 64bitach.

Po drugie: oczywiście bufory systemowe (cache itp.) mają się nijak do zużycia ramu. Linuks jest tak napisany, że nie zależnie od ilości ramu w maszynie, po jakimś tam czasie pracy, zje całą pamięć i tyle. Co wcale nie znaczy, że będzie przez to działał gorzej (wręcz przeciwnie, dzięki tym buforom pamięciowym dostęp do dysku jest szybszy).

Po trzecie: swap=2xRAM to stare zalecenie z desktopów, które kiedyś notorycznie cierpiały na braki pamięci operacyjnej. Prawda jest taka, że można żyć spokojnie i bez swapa, ale trzeba wiedzieć co się robi. Ja mam nawet kilka serwerów, na których celowo swapa wyłączyliśmy.

Po czwarte: Faktycznie porobiło się teraz tak, że to Windows porzebuje więcej ramu niż linuks (choć jeszcze w czasach XP, o 98 nie wspominając, było odwrotnie). No i fakycznie jest tak, że na 1GB ramu da się całkiem wygodnie pracować (pisałem już, że tylko jeden mój "desktop" ma więcej niż 1GB ramu?).

 

BTW: kupowałem ostatnio znajomemu laptopa z fizycznym portem szeregowym i (przypadkowo) 4GB ramu (słabszych nie mieli). Kosztował 1000zł, ale oczywiście "nowka sztuka" nie był (choć gwarancję miał). Można se takie coś na "desktopa" strzelić (zwłaszcza, że matrycę miał 1600x1200) i mieć gwarancję, że ten serial zawsze zadziała (bo nie ma żadnych przejściówek na USB, czy sieciowych, z którymi bywaja problemy). Tylko trza mieć te 1000zł... ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

Tylko trza mieć te 1000zł... ;-)

 

Ano właśnie. Akurat planuję zakup urządzenia mobilnego, ale własnie mobilnego, czyli netbooka albo nawet mojej nowej obsesji czyli Eee Pan Trasformera. Kloc z 15 calowym ekranem ważący 3kg nie jest już w moim słowniku mobilny. Fakt, że taki lapsio z RSem byłby idealny.

Odnośnik do komentarza
Udostępnij na innych stronach

Takie coś to fajne jako bajer, albo do pooglądania weba, do nieczego poważniejszego się już nie bardzo nadaje. Mam jednego netbooka na stanie, wybranego bardzo dokładnie pod kontem możliwości pracy na nim (czyli np. rozsądnej klawiatury) - w zasadzie nie mam dla niego zastosowania. Cokolwiek chcę zrobić zawsze się okazuje, że wygodniej to zrobić na 14" notebooku, z dużo lepszym ekranem i o niebo wygodniejszą klawiaturą.

Tablety muszą być IMHO na prawdę wyjątkowo sprytnie zrobione (głównie pod kontem interfejsu), żeby dłuższe z nich korzystanie nie było "drogą przez mękę", a tak pozostają tylko ładnie prezentującą się na reklamach zabawką (nie stać mnie na kosztującą 3k przeglądarkę)...

 

PS. Odchodzimy trochę od tematu wątku, ale skoro dzięki temu się znowu "rozbujał' to może warto? ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

Zdobyć w miarę dokładne meteorologiczne dane numeryczne za free, to niestety raczej "marzenie ściętej głowy". A parsować można w sumie nawet dane graficzne (to może być nawet skuteczniejsze niż ta informacja tekstowa), ale jak zawsze przy parsowaniu czegokolwiek obcego - jak się zmieni format danych wejściowych, to kicha... ;-)
Odnośnik do komentarza
Udostępnij na innych stronach

Czemu odchodzimy? Nie samymi PLC człowiek żyje :)

 

Wszystko zależy od potrzeb. Moja praca polega na: a) czytaniu b) pisaniu. Dla mnie wystarczy, że sprzęt obsługuje Google Docs (wygodne, bo zsynchronizowane, ale Dropbox też OK) i pdfy. Za to nienawidzę targać cięzkiego sprzętu - komputer ma mi normalnie wchodzić do teczki i ma nie przeszkadzać. Nie wiem, czy znasz Eee Pad Transformera - to nie tylko tablet, bo ma normalną fizyczną klawiaturę jak 10" netbook. Do czytania odłączam i uzywam jako tablet. Do pisania dołączam i piszę jak na netbooku. W teorii super, muszę tylko to wziąć w łapy i wypróbować. Czyli nie jest "tylko przeglądarką" choć jak sam zauważyłeś w zasadzie "tylko przeglądarka" w obecnych czasach może bardzo wiele. Ba! Może zastąpić cały system - patrz Chrome OS.

Alternatywą jest Kindle + zwykły netbook. Wciąż sie biję z myślami. [ale Kindlem nie obsłużysz inteligentnej instalacji elektrycznej - więc ma dużego minusa - żeby nie było, że offtop ;) ]

Edytowane przez Depi
Odnośnik do komentarza
Udostępnij na innych stronach

Moja praca, to jednak głównie pisanie. Może i niedługich tekstów, ale jednak pisanie. Targać ciężkiego sprzętu też nie lubię, ale bez dobrej klawiatury nie umiem pracować. Mam netbooka 10" z możliwie najlepszą klawiaturą jaką udało mi się wtedy znaleźć (IMHO lepsza od tej z EeePC, a taka jest do tego Transformera dodawana), no i nie umiem na niej pisać. Tj. pisać może i się da, ale ze względu na rozmiar i "gęstość" klawiszy, szybkość pisania spada drastycznie, a liczba popełnianych błędów rośnie. O klawiaturze ekranowej zdanie mam jeszcze gorsze... ;-)

A co do przeglądarki - to jednak tylko przeglądarka. Można dużo przez nią pokazać i poklikać też się daje, ale pisać na dłuższą metę się IMHO nie da (ja Google Docs nie trawię, ale głównie dlatego, że nie lubię jak moje rzeczy trzyma "w szafie" ktoś inny). Może kiedyś (ten HTML5) tzw. aplikacje internetowe dorównają możliwościami i wygodą użycia tym uruchamianym lokalnie, ale na razie to jeszcze ciągle jest przepaść. Aha: Kindla nie widziałem na żywo (tj. nic na nim nie czytałem), ale z tego co kojarzę to rozdzielczość (czy raczej DPI) jego wyświetlacza niczym szczególnym nie różni się od typowych wyświetlaczy laptopowych, a to oznacza, że czytanie tego męczy poważnie wzrok, więc na "elektroniczną książkę" się IMHO nie nadaje. Ciężki klient jestem co? ;-) OT: Konta na Facebooku też nie mam, bo nie potrafię znaleźć dla niego zastosowania... ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

Ogólnie jesteś wyjątkowo zachowawczo nastawiony do wszystkiego. Pewnie jeszcze tęsknisz za czasami Norton Commandera :)

 

Do klawiatury idzie się przyzwyczaić, błędy się poprawia, ale jeśli jesteś przywiązany do dużej, to może dla Ciebie byłoby dobre combo pt. tablet + normalna klawiatura (na kablu albo BT). Wciąż lżejsze toto niż duży laptop, a klawiatura full wypas :) Sam się nad tym zastanowiałem, ale w transformerze podoba mi się, że daje jeszcze dużo dłuższą pracę ten dock. Kilkanaście godzin na jednym ładowaniu oznacza, że nie trzeba nosić ładowarki, czyli znowu o kolejne gramy i przede wszystkim te pier... kable, które doprowadzają mnie do pasji...

Odnośnik do komentarza
Udostępnij na innych stronach

Norton Commandera w sumie też nigdy nie lubiłem (używałem Dos Navigatora ;-) ale i tak CLI jest szybsze ;-) ). Ale faktycznie jest tak, że nie bardzo lubię bajery, które są tylko bajerami, zwłaszcza jak kosztują krocie.

Co do klawiatury, to używam klawiatury notebookowej (konkretnie ThinkPadowej, bo to najlepsza jaką znam). Tak więc nie jest jakoś oszałamiająco duża, ale mimo tego przesiadka na mniejszą jest dla mnie zbyt upierdliwa, by dłużej próbować (może po jakimś czasie bym się wreszcie nauczył, ale nie chce mi się męczyć). Gdybym był bardzo zdesperowany co do ciężaru, to wziąłbym pewnie Thinkpada serii X (robili nawet serie z "tablet" z dotykowym odwracalnym ekranem) - tam przynajmniej klawiatura da się używać ;-)

Teraz już faktycznie polecieliśmy offtopicznie...

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Odpowiedz w tym wątku

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.




×
×
  • Dodaj nową pozycję...