Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

S7-300 Komunikacja profibus i MPI ze sterownikami i robotem ABB

Przemasbmw 08 Feb 2012 06:52 6573 14
SterControl
  • #1
    Przemasbmw
    Level 9  
    Witam kolegów mam dzisiaj pytanie do was na temat komunikacji sterowników s7-300 z innymi urządzeniami a konkretnie chciał bym poszerzyć swoją wiedzę z zakresu komunikacji siemensa oczywiście ta problematyka pomoże nie tylko mi ale myślę że wielu forumowiczą i szczerze mówiąc chce te połączenia zrealizować w najbliższej przyszłości i proszę was o pomoc w tych tematach chodzi mi o połączenie w sieci dwóch sterowników S7-300 po profibusie jak to zrobić i może jakiś przykład programu , połączenie s7-200 z s7-300 po MPI mam do tego połączenia manual i zrobiłem je chyba działa między tymi sterownikami ma być przesyłane 10 bajtów ale nie wiem jak to zrobić w programie jak wysłać ten stan jednego markera albo jakąś wartość analogową proszę o pomoc jakiś przykład i opis , no i ostatnia sprawa połączenie s7-300 z robotem ABB IRB 460 po profibusie jak to zrobić czy będę mógł czytać jakieś wartości analogowe czy tylko stan wejść i wyjść jakieś materiały i może jakiś program bardzo proszę o pomoc wiem że to trudne tematy ale może znajdzie się ktoś kto mi pomoże proszę o wszelkie pomoce wszystko się przyda z góry dziękuje za wszystko pozdrawiam.
  • SterControl
  • #2
    asher
    Level 17  
    1. Profibus wymusza architekturę Master/Slave. Na MPI nie ma tego zagadnienia. Skoro masz już połączone po MPI S7200 z S7300 dołącz do tego kolejne S7300. W takim przypadku każde PLC może czytać/zapisywać dane do każdego innego. Używa się w tym celu bloków X_PUT (SFC68) i X_GET (SFC67)
    Więcej tu: Link
    2. To w jaki sposób zagospodarujesz owe 10 bajtów zależy wyłącznie od potrzeb. Dla transmisji nie ma żadnego znaczenia czy dany bajt jest częścią zmiennej FLOAT czy masz w nim zapisane stany I/O. Można takie dane wrzucać do oddzielnego bloku DB który może już mieć dowolną (prawie ;) ) organizację.
    3. Czy dany robot ABB ma interfejs PB? Jeżeli ma to powinien mieć również dokumentację tego interfejsu (między innymi adresację) oraz plik GSD pozwalający na dodanie go w HW Config jako urządzenie PB
  • #3
    Przemasbmw
    Level 9  
    Witam jeżeli chodzi o połączenie s7-200 i s7-300 to mam już zrobiony kawałek programu do komunikacji w s7-300 właśnie te instrukcje (X_GET,X_PUT) i w s7-200 też mam zrobiony kawałek tylko jakoś nie mogę w s7-300 nic odczytać z tych 10 bajtów ani nic wysłać tzn nie wiem jak to zrobić może ma kolega jakiś kawałek programu przykładowego gdzie chociaż jeden marker jest przesyłany i jedno słowo wsumie to nie wiem jak to mam adresować w tym połączeniu? a jeśli chodzi o robota to pan Jakub Stec ma mi przysłać plik GSD z jakąś instrukcją tylko mimo wszystko nie wiem czy będę umiał to wykorzystać może ma kolega jakiś przykładowy program bardzo bym prosił o pomoc z góry dziękuje.
  • #4
    asher
    Level 17  
    S7-300 Komunikacja profibus i MPI ze sterownikami i robotem ABB

    Na powyższym obrazku jest działająca komunikacja pomiędzy dwoma sterownikami S7-300. Blok X_GET czyta ze sterownika o adresie MPI 10, z bloku DB20, 5 kolejnych bajtów rozpoczynając od zerowego. Zapisuje je w DB200.
    W celu diagnostyki trzeba zapoznać się z kodami błędów w RET_VAL.
  • #5
    Przemasbmw
    Level 9  
    No dobra w moim programie też tak to wygląda ta komunikacja tylko przykładowo jak od DB20.DBX0.0 BYTE 5 zaczynają się te bity do przesyłania to jak w programie zrobie

    I0.0---------------(db20.dbx0.0)

    to marker zerowy bajtu zerowego będzie jeden tak to mam rozumieć że jak w drugim sterowniku wykorzystam go tak

    db20.dbx0.0-----------------Q0.0

    to zadziała i w s7-200 załączy się wyjście? czy jak mam nazywać ten marker w s7-200 bo on chyba nie obsługuje takich zmiennych jak db20.dbx00 bo tam są VB albo VW takie jak to ma wyglądać?
  • SterControl
  • #6
    asher
    Level 17  
    Wszystko o komunikacji S7200-MPI-S7300/400 łącznie z przykładem:
    Link
  • #7
    Przemasbmw
    Level 9  
    Witam nie wiem czemu ale nie mogę otworzyć tego programu pisze że mogę otworzyć tylko bibliotekę. Bawiłem się wczoraj tym moim programem w domu i próbowałem wysłać do s7-200 jakąś wartość i zauważyłem że w s7-200 mogę zmienić wartość jednej zmiennej ale gdy z s7-300 włączam wysyłanie do s7-200 właśnie tej samej zmiennej to wartość w s7-200 się zerowała więc połączenie jest i chyba działa tylko nie rozumiem dlaczego się zerowała jak np wysyłałem do tej zmiennej liczbę 3 czy znowu coś źle adresowałem zakres pamięci w s7-200 do której wysyłałem to VW30 i 10 kolejnych bajtów a w s7-300 te zmienne to db1.dbw30 i 10 kolejnych bajtów tylko że ja chciałem wysłać jedno słowo db1.dbw32 do VW32 tylko że jak nie było wysyłania to mogłem w s7-200 wpisać coś do tej wartości a jak włączyłem wysyłanie to vw32 w s7-200 się zerowało mimo że wysyłałem jakąś wartość którą wpisywałem do db1.dbw32 a kolega może mi coś pomóc w temacie połączenia z robotem ABB?
  • #8
    Przemasbmw
    Level 9  
    Witam kolegów udało mi się to zrobić to było takie proste tylko popełniałem bardzo podstawowy błąd odwoływałem się do złego obszaru pamięci w s7-200 myślę że z s7-300 drugim jak bym się łączył to nie popełnił bym tego błędu :D Panowie nasuwa się kolejne pytanie czy taka komunikacja po profibusie wygląda tak samo czy dużo się różni? I kolejny raz proszę o pomoc w połączeniu s7-300 z robotem ABB jakiś przykładowy program i konfiguracje z góry dziękuje pozdrawiam.
  • #9
    Marek K
    Level 13  
    http://wikimarek.referata.com/wiki/Siemens_S7

    Co do komunikacji między sterownikami to trzeba wybrać który z czym :) a potem szukać sposobu. Cały ten bałagan jest opisany w tym dokumencie

    http://support.automation.siemens.com/WW/llis...objaction=csview&extranet=standard&viewreg=WW

    Najprościej to mi się udało zrealizować przy pomocy Global data Table (na mojej stronie). Udało mi się również S-300 (klijent) S-400 (serwer) przy pomocy instrukcji X_put X_Get (Za góra dwa dni dodam opis na stronie). Gdyby klijentem była S400 a serwerem S300 można by Put Get zastosować.:P
  • #10
    bigmaster
    Level 15  
    witam twoja strona nie dziala
    a interesuje mnie komunikacja po profi miedzy s7-300 i s7-300
    pozdro
  • #11
    Marek K
    Level 13  
    Strona działa. Była przez jakiś czas niedostępna - ale tak to już jest z darmowymi serwisami :(

    Po profibusie nie robiłem ale robiłem po Ethernecie i MPI Jeśli chodzi o profibus to jakimś rozwiązaniem są tzw "DP/DP coupler" małe urządzonko co ma dwa wejścia profibus i może udostępniać przestrzeń danych z jednego sterownika do drugiego
  • #12
    bigmaster
    Level 15  
    Witam po przerwie znowu na budowie. wiec tak

    obecnie siec mam zbudowaną tak
    SCADA inTouche po Ethernet
    Master CPU 315-2PN/DP
    llave CPU 315-2 DP
    panel SIMATIC HMI Station(1)
    swith scalance x005
    S7-300 Komunikacja profibus i MPI ze sterownikami i robotem ABB S7-300 Komunikacja profibus i MPI ze sterownikami i robotem ABB

    Obecnie podliczając się do swith'a widzę mastera i slave (mogę przejść w tryb oniline cego do koca nie rozumiem, jeszcze nie próbowałem w ten sposób wgrać program di slave'a). panel widzi obydwa sterowniki.
    czy inTouche podłączony do swith będzie widział slave?
    czytał zmienne, czy muszę przepisać wszytko na mastera?
  • #13
    Marek K
    Level 13  
    Takiej konfiguracji nie testowałem.
    Ale jeśli działa ci routing między Ethernetem i Profibusem. Inaczej mówiąc. Jeśli możesz przy pomocy laptopa podłączonego do Ethernetu podejrzeć sterownik, który wisi na profibusie (wejść w tryb monitor) to i nie powinieneś mieć problemu z dobraniem się do niego z poziomu intoucha (choć pewnie łatwiej by było zamiast intoucha użyć wincc Bo w panelu OP byś miał prawie gotowy projekt bazowy).

    Ps. Właśnie po to się konfiguruje i wgrywa konfigurację sieciową, żeby taki routing zrobić. Czyli, żeby sterownik przekazywał pakiety z sieci Ethernet do profibusa.
  • #14
    bigmaster
    Level 15  
    w slave tworze FC
    A I 1.0
    = Q 50.0
    w master
    L ID 50
    T DB100.DBD 0

    I niestety się nie przepisuje

    w zaoczniaku konfiguracja komunikacji

    23,34
    dałem rade jutro opisze

    23:50
    jak przerzucić cale db do VAT automatycznie?
  • #15
    bigmaster
    Level 15  
    asher wrote:
    S7-300 Komunikacja profibus i MPI ze sterownikami i robotem ABB

    Na powyższym obrazku jest działająca komunikacja pomiędzy dwoma sterownikami S7-300. Blok X_GET czyta ze sterownika o adresie MPI 10, z bloku DB20, 5 kolejnych bajtów rozpoczynając od zerowego. Zapisuje je w DB200.
    W celu diagnostyki trzeba zapoznać się z kodami błędów w RET_VAL.


    to czyta bity
    a cale słowa?
    próbowałem adresować "DB2.dbw 0" i nic