S5 EPROM DB -> problem

Feb 28, 2007 5 Replies

Witam grupowiczów. Klient uparł się aby zrobić mu EPROM`a z programem do S5-115 (CPU944). Nagrałem EPROM`a, próba i... pad CPU. Okazało się, że CPU próbuje zapisać dane do DB, który jest w EPROM. Niby logiczne, ale... Siemens już nieraz mnie zaskoczył swoim dziwnym zachowaniem. Otóż, inny sterownik również z EPROM (CPU943) przy starcie (skasowany RAM) pięknie kopiuje całą zawartość EPROM do RAM (miga sobie LED) i pracuje z programem w RAM. Po wyłączeniu zasilania można wyjąć EPROM`a, a po powtórnym załączeniu CPU pracuje już z RAM`em.



No i moje pytania:



- w jaki sposób zmusić CPU944 aby kopiował zawartość EPROM do RAM (oczywiście wcześniej pełne kasowanie CPU) i pracował dalej z pamięcią RAM (możliwość modyfikacji bloków)



- w jaki sposób przenieść chociaż bloki DB z EPROM do RAM, ale z zachowaniem ich numeracji (np. w EPROM DB10 -> RAM DB10) bo bez tego to nie problem :-)



Od razu zaznaczam, że tworzenie bloków DB przy starcie programu nie wchodzi w rachubę. Pewne mają już wartości inicjujące pracę programu, ale jednocześnie muszą mieć możliwość modyfikowania w trakcie pracy.



Pozdrawiam


U¿ytkownik "ELP" snipped-for-privacy@poczta.neostrada.pl> napisa³ w wiadomo¶ci news:op.tog8hndk863c9n@rafal...

(...)

Raczej nie pracuje z S5, ale to trochê dziwne zachowanie. Cpu zawsze kopiuje zawartosc epromu do swojego RAMu. Jestes pewien, ¿e to brak dostêpu do DB? Podobne problemy zdarzaja siê w S5-100 kiedy np. ¶ci±gniesz program ze sterownika zrobisz poprawki, wgrasz na eprom spowrotem i... zapomnia³e¶ z projektu usun±æ bloki standardowe firmware'u (np funkcje mnozenia FB24x-OIDP). Wtedy CPU nie wstanie bo nie da siê tych bloków podmienic. Wgraj program bezpo¶rednio do PLC i sprawd¼ czy startuje.

A mo¿e to EPROM nie do tego typu CPU?

Zreszt± przejrza³em dokumentacje do CPU944 i:

- program nie mo¿e byæ wiekszy ni¿ 96kB lub nawet 48kB zale¿nie od typu epromu

- CPU944 i 943 zawsze kopiuja DB do RAMu. 941 i 942 nie - trzeba bloki tworzyæ dynamicznie lub dograæ bezpo¶rednio z PG.

- istenieje jaki¶ atrybut bloku o nazwie "Block in Eprom" - jak jest ustawiony to dany blok po za³±czeniu zasilania zostanie odczytany z Epromu i przywrocone warto¶ci poczatkowe zmiennych.

Sprawa jest ciekawa:-) Napisz jak znjadziesz rozwi±zanie (lub b³±d).

Pozdrawiam, Szymon

Do tej pory tez mi się tak wydawało. CPU943 tak właśnie się zachowuje, kopiuje cały EPROM do RAM.

944 nie chce nic skopiować. Przy próbie modyfikacji DB w CPU z poziomu programatora (generalnie używam PG2000) wyskakuje błąd "blok w EPROM". BSTACK także pokazuje zwis programu na instrukcji zapisu danej do DB.

Program załadowany programatorem działa bez zarzutu. Załadowany z EPROM również startuje, no i działa do momentu próby zapisu danej do DB.

Na pewno dobry. Inny CPU944 z takim EPROM`em działa bez problemów, tylko że tam bloki DB są tworzone dynamicznie.

Program mieści się w EPROMie 32kB.

A gdzie tego atrybutu szukać ?

Pozdrawiam

ELP napisał(a):

Na pewno połamie te linki :

formatting link
formatting link
Pozdrowienia Andrzej

Andrzej napisał(a):

Pierwszy nie wchodzi do źródła. Poszukaj tego Processing data blocks in EPROM mode 06/24/2002 10183535

Pozdrowienia Andrzej

U¿ytkownik "Andrzej" snipped-for-privacy@wp.pl napisa³ w wiadomo¶ci news:es7j5g$e30$ snipped-for-privacy@nemesis.news.tpi.pl...

(...)

"How can I change the ID of a block in an S5 program so that the data blocks are _not_ copied from the EPROM into the internal RAM? "

Czy¿by kto¶ grzeba³ w nag³ówkach wcze¶niej? Chyba trzeba do nich zajrzeæ:-) Mo¿e to PG2000 potrafi co¶ popsuæ...

Pozdrawiam, Szymon

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required