Firma Instabud-Szepielak istnieje od 15 lat. Zajmuje się sprzedażą hurtowa materiałów i urządzeń stosowanych w dziedzinie ochrony środowiska naturalnego jak również ich produkcją. Aby spełnić potrzeby użytkowników naszych produktów rozwijano rozwiązania automatyki. Jak w przypadku większości firm kontrolowana jest konkurencyjność oferowanych produktów. Dla zapewnienia stabilności produkcji stale współpracujemy z wybranymi firmami. Firma stale się rozwija, wdraża nowe produkty, zwiększa zatrudnienie, poszukuje nowatorskie rozwiązania organizacyjne. Dla podniesienia konkurencyjności rozwiązań przepompowni przydomowych, zamierzamy zlecić zaprojektowanie i wykonanie prototypu sterownika programowalnego wraz z gotowym oprogramowaniem sterującym. Po zaakceptowaniu takiego rozwiązania pragniemy rozpocząć stałą współpracę polegającą na zlecaniu wykonania sterownika (prawdopodobnie bez większych zmian pod względem elektroniki) oraz oprogramowania do niego. Prosimy o przedstawienie oferty cenowej zawierającej opis techniczny oraz następujące pozycje cenowe: - Wykonanie prototypu - Wykonanie oprogramowania sterującego - Cena jednej sztuki sterownika przy zamówieniach rzędu 100 szt. - Przekazanie kodów źródłowych do wszystkich oprogramowań oraz pełnych projektów płytek po zakończeniu współpracy (tą kwotę można zróżnicować w zależności od przyczyny rozwiązania współpracy) Nie wyklucza się innego rozwiązania współpracy jak również inne propozycje pozycji w ofercie cenowej. Konieczne jest podanie także szacowane czasy wykonania prototypu, oprogramowania oraz partii sterowników. Wykonanie oprogramowań dla innych algorytmów pracy (inna ilość pomp, inne czujniki itp.) będą zlecane osobno. Niniejsze zapytanie przesyłamy do szeregu firm/osób. Mile widziany będzie opis dotychczasowej działalności (strona WWW, referencje lub działania udokumentowana na forach dyskusyjnych np. www.elektroda.pl) dla uprawdopodobnienia wykonalności zlecenia. Zastrzegamy sobie prawo dowolnego doboru kryteriów oceny ofert jak również sposobu informowania oferentów o wynikach oceny. W przypadku niejasności co do zapisów zawartych w niniejszym dokumencie proszę pisać na adres: [email protected] Dokument dostępny będzie pod adresem: http://www.szepielak.pl/materialy/spec/spec.doc Wersja: 3 Zapisy dopisane w porównaniu do wersji 1 zaznaczone są na kolor czerwony. 1 Specyfikacja ogólna - Obudowa plastikowa do montażu na szynie TS-35 o szerokości np. 6 modułów . - Przewody podłączane Do listwy zaciskowych np. DEGSON ELECTRONICS 15EDGRC-3.5/8P (przewidywać na tą chwilę dostarczanie obu części ze sterownikiem). - Wyświetlacz podświetlony 2x16 znaków - klawisze OK, ESC, ^, v,<, > - diody ukazujące prace wejść i wyjść oraz Rx, Tx, oraz 2 pokazujące stany programu(dowolnie programowalne) Wyświetlacz oraz klawisze mają udostępniać dla użytkownika proste menu do podglądania aktualnych wartości zmiennych oraz przeglądania i edycji parametrów. Specyfikacja minimalna wejść/wyjść Zasilanie napięciem stałym w zakresie od 12 do 30 VDC 8 wejść analogowych IA1-IA8 4-20mA(użycie ich jako wejść binarnych jest pożądane), min. 2 z nich lub dodatkowe 2 powinny posiadać dodatkowe możliwość (opis poniżej) 8 wejść binarnych IB1-IB8 4 wyjścia binarne przekaźnikowe (dostępne obie końcówki styku normalnie otwartego) QB1-QB4 1 wyjście analogowe 4-20mA mogące być obciążone rezystancją 250Ohm. QA1 1 Wejście szeregowe do programowania oraz implementowania protokołu RTU MODBUS Wewnątrz ma być zabudowany brzęczek uruchamiany programowo. Dodatkowe możliwości 2 wejść analogowych IA7, IA8 powinny obejmować możliwość podłączenia (każde z wejść oba typy): - przekładnika prądowego TELEMA AC1040 lub podobny - przetwornika ciśnienia np. FREESCALE (MOTOROLA) - MPX2200AP lub podobny. (elementy te lutowane będą opcjonalnie najprawdopodobniej w naszym zakładzie). Sygnał z niego będzie przetworzony programowo aby zlinearyzować pomiar poziomu (patrz rysunek) Gdy jest podłączony ten rodzaj przetworników podłączanie czegokolwiek do zewnętrznych końcówek danego wejścia może spowodować zakłócenia sygnałów. Taka sytuacja jest akceptowalna. 2 Programowanie urządzenia Dopuszczalne jest, aby programowanie sterownika następowało przez zmianę całego programu procesora (np. In-Circuit Programming). Nie jest wymagana obsługa języka drabinkowego lub blokowego. Programowanie urządzenia lokalne np. przez port RS232. Powinna być możliwość zmiany programu sterownika w miarę prosty sposób. Dzięki temu, gdy będzie opracowanych wiele algorytmów będziemy je mogli samodzielnie wgrać. Dla komunikacji w protokole RTU MODBUS preferowane będzie złącze RS485 Przykładowe zastosowanie Na rysunku przedstawiono schematycznie wygląd przepompowni ścieków z pompami zatapialnymi. Pompownia posiada pompy, które pompują dopływającą ciecz (rura po lewej stronie) przez rurociąg (wyjście rurociągu po prawej stronie), gdy poziom cieczy osiągnie odpowiednio dużą wartość. Pomiar poziomu może następować w różny sposób, często dla zwiększenia niezawodności stosuje się różne rodzaje czujników oraz dobiera się algorytmy kontrolujące czujniki. W rozpatrywanym przypadku sterowanie będzie obejmowało 2 pompy. Załączenie pompy następuje na podstawie pomiaru poziomu cieczy w zbiorniku mierzonego za pomocą dzwonu hydrostatycznego. Osiągnięcie poziomu ZAL1 powoduje załączenie pierwszej pompy. Po osiągnięciu poziomu ZAL2 załączana zostanie druga pompa. Pompy pracują do momentu obniżenia poziomu ścieków do poziomu WYL. Poziomy zadziałania pomp można określić wprowadzając odpowiednie nastawy w sterowniku. Załączanie pomp następuje naprzemiennie. Dodatkowo w sterowniku logicznym ustawiono poziom MAX, którego osiągnięcie powoduje sygnalizację na odpowiednim wyjściu sterownika. Z wyświetlacza sterownika można odczytać czas pracy poszczególnych pomp, aktualny poziom ścieków, prąd pobierany przez pompy, komunikaty alarmowe oraz aktualna datę i godzinę. Na następnych stronach przedstawiono schemat elektryczny szafy sterowniczej 3 4 5 6 7 8 Algorytm sterowania Sterownik ma wykonywać program w sposób niezawodny, niezależnie od wyświetlanego menu czy też ilości komunikatów RTU MODBUS. Sterownik ma być serwerem (urządzeniem slave) dla sieci RTU MODBUS. Poniższa tabela przedstawia rozpiskę wejść i ich parametry Oznaczenie Opis funkcji Dla protokołu MODBUS IB1 Została załączona pompa P1 Discrete Input 0 IB2 Została załączona pompa P2 Discrete Input 1 IB3 Pompa P1 nie jest w awarii Discrete Input 2 IB4 Pompa P2 nie jest w awarii Discrete Input 3 IB5 Zasilanie o prawidłowych parametrach Discrete Input 4 IB6 Brak alarmu suchobiegu Discrete Input 5 IB7 Alarm przelewu Discrete Input 6 IB8 Szafka jest zamknięta Discrete Input 7 IA1 Tryb automatyczy P1 Discrete Input 8 IA2 Tryb automatyczy P2 Discrete Input 9 IA3 Discrete Input 10 IA4 Discrete Input 11 IA5 Discrete Input 12 IA6 Discrete Input 13 IA7 Discrete Input 14 IA8 Discrete Input 15 QB1 Załącz pompę P1 Discrete Input 16 QB2 Załącz pompę P2 Discrete Input 17 QB3 Załącz sygnalizację świetlno-dźwiękową Discrete Input 18 QB4 Nastąpił przelew Discrete Input 19 IA1 Input Register 0 IA2 Input Register 1 IA3 Input Register 2 IA4 Input Register 3 IA5 Input Register 4 IA6 Input Register 5 IA7 pomiar prądu (przekładnik miniaturowy) Input Register 6 IA8 pomiar poziomu (dzwon + czujnik ciśnienia) Input Register 7 Wartość IA1 po przetworzeniu Input Register 8 Wartość IA2 po przetworzeniu Input Register 9 Wartość IA3 po przetworzeniu Input Register 10 Wartość IA4 po przetworzeniu Input Register 11 Wartość IA5 po przetworzeniu Input Register 12 Wartość IA6 po przetworzeniu Input Register 13 Wartość IA7 po przetworzeniu (0,01A jest jednostką) Input Register 14 Wartość IA8 po przetworzeniu (cm jest jednostką) Input Register 15 QA1 Wartość analogowa poziomu cieczy Input Register 16 Poziom SUCHOBIEG (w cm) – nie używany Holding Register 0 Poziom MIN (w cm) – domyślnie 20 Holding Register 1 Poziom ZAL1 (w cm) – domyślne 50 Holding Register 2 Poziom ZAL2 (w cm) – domyślne 70 Holding Register 3 Poziom MAX (w cm) – domyślne 90 Holding Register 4 Rezerwa Holding Register 5 Opóźnienie załączenia po powrocie zasilania (w sek.) – Holding Register 6 domyślnie 15 9 Znaczenie poszczególnych wejść: - IB1 - Została załączona pompa P1 – Wejście to będzie otrzymywało sygnał ze styku pomocniczego stycznika pompy P1. Sygnał ten informuje sterownik, że pompa P1 pracuje. Praca pompy może nastąpić nie tylko przez wysterowanie sterownikiem, ale także przez przełączniki w automatyce. Brak tego sygnału po wysterowaniu przez sterownik pompy P1 może oznaczać sytuację awaryjną pompy lub nieprawidłowy tryb pracy wybrany w automatyce. - IB2 - Została załączona pompa P2 – Wejście to ma znaczenie analogiczne jak IB1. - IB3 - Pompa P1 nie jest w awarii – Wejście to będzie otrzymywało sygnał ze styku przekaźnika wysterowywanego przez zabezpieczenia pompy P1. Sygnał ten informuje sterownik, że zabezpieczenia nie wykryły awarii pompy. Sygnał ten może zaniknąć w przypadku zadziałania zabezpieczenia silnikowego. Po inspekcji pompy i załączeniu zabezpieczenia silnikowego sygnał ten powróci. Brak tego sygnału oznacza również (z powodu obwodów automatyki) iż wysterowywanie pompy P1 nie powiedzie się lub jest niepożądane. - IB4 - Pompa P2 nie jest w awarii – Wejście to ma znaczenie analogiczne jak IB3. - IB5 - Zasilanie o prawidłowych parametrach – Wejście to będzie otrzymywało sygnał ze czujnika kontroli faz. Sygnał ten informuje sterownik, że układy sterowania otrzymują prawidłowe napięcie zasilania. Sygnał ten może zaniknąć i powrócić podczas zakłóceń w sieci zasilającej automatykę. Brak tego sygnału oznacza, że wysterowywanie pomp nie powiedzie się lub jest niepożądane. - IB6 - Brak alarmu suchobiegu – Wejście to będzie otrzymywało sygnał z pływaka suchobiegu. Obecność tego sygnału oznacza iż w zbiorniku jest wystarczająco dużo wody żeby załączyć zatapialna pompę. Brak tego sygnału oznacza, że wysterowywanie pompy jest niepożądane. - IB7 - Alarm przelewu – Wejście to będzie otrzymywało sygnał z pływaka przelewu. Obecność tego sygnału oznacza zbyt duży poziom cieczy w zbiorniku. Jeśli nie ma innych przeciwwskazań konieczne wydaje się załączenie co najmniej jednej pompy. Obecność tego sygnału oraz brak obecności sygnału IB6 oznacza sprzeczność i oznacza „zawieszenie się” pływaków, w tej sytuacji należy raczej ignorować oba sygnały. - IB8 - Szafka jest zamknięta – Wejście to będzie otrzymywało sygnał z czujnika kontaktronowego o zamknięciu drzwi automatyki. Sygnał ten informuje sterownik, że drzwi automatyki są zamknięte. - IA1 - Tryb automatyczy P1 – Wejście to będzie otrzymywało sygnał z przełącznika trybu pracy pompy P1. Sygnał informuje że pompa P1 ma włączony tryb automatyczny. Sterownik powinien sterować pompą tylko jeśli jest w trybie automatycznym. - IA2 - Tryb automatyczy P2 – Wejście to ma znaczenie analogiczne jak IA1. - QB1 - Załącz pompę P1 – Wyjście to będzie wysterowywało stycznik pompy P1. Załączanie pompy P1 następuje naprzemiennie z pompą P2 gdy nie ma do tego przeciwwskazań oraz poziom cieczy jest wyższy niż poziom ZAL1. Wyłączenie następuje po obniżeniu się poziomu cieczy poniżej poziomu WYL. Załączenie może nastąpić również, gdy poziom cieczy przekroczy poziom ZAL2 – w tej sytuacji pracują obie pompy. W takiej sytuacji nie może nastąpić równoczesne załączenie pomp. Między załączeniami pomp musi upłynąć 4sekundy. - QB2 - Załącz pompę P2 – Wyjście to znaczenie analogiczne jak QB1. - QB3 - Załącz sygnalizację świetlno-dźwiękową – Wyjście to będzie wysterowywało sygnalizator akustyczno optyczny. Załączenie sygnalizatora następuje, gdy pojawi się jakaś sytuacja awaryjna wykryta przez sterownik. Dzięki tej informacji optyczno-dźwiękowej odpowiednia osoba może być poinformowana o konieczności inspekcji danego układu automatyki. - QB4 - Nastąpił przelew – Wyjście to będzie załączało powiadomienie zdalne w module telemetrycznym. Wyjście to zostanie załączone, gdy mierzony poziom cieczy przez sterownik przekroczy wartość zaprogramowaną w rejestrze Holding Register 4. IA7 - pomiar prądu (przekładnik miniaturowy) – Wejście to będzie podłączone do przekładnika prądowego miniaturowego. Przez przekładnik będzie przełożony przewód jednej z faz zasilającej pompy. Wartość z wejścia analogowego będzie bezpośrednio zapisana do Input Register 6, następnie przetwarzana za pomocą funkcji liniowej oraz zapisana w rejestrze Input Register 14 w taki sposób, aby jedna jednostka w rejestrze równała się 0,01A prądu płynącego przez wspomniany przewód. 10 IA8 - pomiar poziomu (dzwon + czujnik ciśnienia) - Wejście to będzie podłączone do czujnika ciśnienia połączonego z dzwonem hydrostatycznym. Wartość ciśnienia będzie zależeć od poziomu cieczy w zbiorniku. Wartość z wejścia analogowego będzie bezpośrednio zapisana do Input Register 7, następnie przetwarzana za pomocą funkcji nieliniowej oraz zapisana w rejestrze Input Register 15 w taki sposób aby jedna jednostka w rejestrze równała się 1cm poziomu cieczy. Funkcja nieliniowa przybliżona będzie odcinkowo liniowo za pomocą kilku (np. 7) odcinków. - QA1 - Wartość analogowa poziomu cieczy – Wyjście to będzie generowało przekazywało sygnał (standardowy automatyki 4-20mA) do urządzenia telemetrycznego. Wartość z rejestru Input Register 16 będzie przetworzona aby jedna jednostka równa była 1/400 pełnego zakresu. Wartość rejestru Input Register 16 ma być równa Input Register 15. Sterownik powinien zapewniać zapis nieulotny rejestrów z nastawami sterownika, przynajmniej 16 rejestrów 16bitowych. Opis działania rejestrów Holding Register 0 … Holding Register 6 zawarty jest w krótkim opisie przed schematami elektrycznymi. Wszystkie opisane rejestry powinny być dostępne przez RTU MODBUS. Poniżej na schemacie blokowym przedstawiono w sposób uproszczony podstawowe zależności w algorytmie sterowania. Niniejszy schemat to forma opisu algorytmu, a nie wymaganie. Nie jest wymagane, aby program sterownika był edytowany w formie blokowej lub drabinkowej. Opisany algorytm sterowania jest mniej więcej najbardziej złożonym jaki będzie realizował sterownik. Na schemacie użyto symboli o następującym znaczeniu: - Wejście - Wyjście - Połączenie rozłączone dla przejrzystości rysunku - Pamięć - Logiczne „I” - Logiczne „LUB” - Komunikat - Opóźnienie - Licznik godzin pracy - Licznik - Przerzutnik RS - Przekaźnik impulsowy - Komparator analogowy 11 12 13 Menu sterownika Menu użytkownika będzie działało mniej więcej jak przedstawiono na grafie. B49_A B49_B B45 B43 B47_WYL B47_ZAL1 14 B47_ZAL2 B47_MAX B47_DEL B41_A B41_B Menu posiada dodatkowa funkcjonalność edycji nastaw, czasu opóźnienia, datę i czas. Dla bloków B47_WYL, B47_ZAL1, B47_ZAL2, B47_MAX, B47_DEL, B41_A jest możliwość wyświetlenia kursora po naciśnięciu przycisku „OK” przez 3 sekundy. W trybie edycji przyciski „<” oraz „>” poruszają się po kolejnych cyfrach, natomiast „v”oraz „^” zmieniają wartość cyfry. Przycisk „ESC” powoduje anulowanie wprowadzonych zmian, przycisk „OK” potwierdza i zapisuje wprowadzoną wartość. Wartości mogą zawierać się w następujących zakresach: - WYL – 0-399 z tym jednak zastrzeżeniem, że musi być mniejsza od wartości ZAL1, ZAL2, MAX - ZAL1 – 1-400 z tym, że musi być większy od WYL oraz musi być mniejsza lub równa od ZAL2, MAX - ZAL2 – 1-400 z tym, że musi być większy od WYL oraz musi większy bądź równy ZAL1 - MAX – 1-400 z tym, że musi być większy lub równy od ZAL1 - OPÓŹNIENIE OD ZASIL. – 5-1000 - DATA i CZAS – RRRR-MM-DD i ##:## Wersja będzie nie edytowalna 15 Gdy jakiś komunikat (nie będący alarmowym) pokazuje się na wyświetlaczu dłużej niż 2 minuty sterownik powinien przejść automatycznie do komunikatu B49_A. Gdy komunikat był w czasie edycji i przez 2 minuty nie naciśnięto żadnego przycisku, powinno nastąpić anulowanie wprowadzonych zmian oraz powinno nastąpić wyświetlenie komunikatu B49_A. Gdy wykryto jakąś sytuację alarmową nie następuje przechodzenie do komunikatu B49_A, lecz jednorazowo do komunikatu alarmowego, który pojawił się najpóźniej. W czasie awarii pokazują się komunikaty informujące o tej sytuacji. Oto możliwe komunikaty: B53 B54 B55 B56 B57 B58 B59 B60 B64 16