Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest piątek, 29 marca 2024, 11:15

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 11 ] 
Autor Wiadomość
Post: czwartek, 27 sierpnia 2009, 10:31 
Offline
Użytkownik

Rejestracja: niedziela, 23 września 2007, 14:35
Posty: 477
Kiedyś poruszyłem zagadnienie NND w roli logera danych napływających na port COM ( http://forum.freesco.pl/viewtopic.php?t=17394
http://www.elektroda.pl/rtvforum/topic1177138.html ).

Teraz potrzebna mi jest większa funkcjonalność. Otóż uruchamiam Inteligentną pracownię z wieloma urządzeniami pracującymi w sieci RS-485 nasłuchującymi komunikatów z centrali. Jako centralę mógłbym opracować odrębne urządzenie na uP, ale po co ładować się w z góry bardzo ograniczone (niewielkie zasoby pamięci mikrokontrolera) i mało wygodne w rozbudowie urządzenie elektroniczne, jeśli do tego celu można wykorzystać NND pracujące na maszynie w tym samym pomieszczeniu.

Przydałoby się coś w rodzaju crona, z drugiej nieco bardziej rozbudowanego. Z jednej strony, aby program wysyłał o określonych godzinach zaprogramowane komunikaty na port COM, a z drugiej, aby była możliwość programowania procesów nieco bardziej złożonych logicznie (decyzje logiczne na podstawie danych odebranych z urządzeń w sieci (temperatura, poziom oświetlenia itp.).

Idealną sytuacją byłoby sprowadzenie wszystkiego do pojedynczego skryptu konfiguracyjnego. Cała inteligencja byłaby wtedy pod wygodną i przejrzystą kontrolą, i zawierała by się w łatwo modyfikowalnym skrypcie.

Jakieś pomysły? A może chęci do współpracy nad projektem? :-)

Pozdrawiam
Mariusz


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 10:45 
Offline
Honorowy Admin

Rejestracja: piątek, 5 lipca 2002, 17:30
Posty: 7800
Lokalizacja: Słupsk
Jestem od jakiegoś już czasu pod wrażeniem twoich pomysłów, choć jako laik czasem nie bardzo wiem, o co ci chodzi.
Rozumiem, że w tym przypadku jest to projekt, który w jakiś sposób za pomoca rozmaitych czujników i przełączników ma sterować parametrami urządzeń - światłem, temperaturą i czymś tam może jeszcze...
Ja to sobie raczej myślę, ze maluchem to pola nie zaorzesz, bo nie do tego został przeznaczony. A maluch to nnd. Chyba też nie da się twoich potrzeb załatwić skryptem w bashu. Przypuszczam, że do tego są odpowiednie urządzenia i zapewne moduły do tego by takie czujniki i inne elementy podłączyć do komputera, i zapewne jest także wyspecjalizowane i nietanie oprogramowanie.

_________________
Obrazek Belfer.one.PL
Obrazek Audio Cafe


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 10:51 
Offline
Użytkownik

Rejestracja: niedziela, 23 września 2007, 14:35
Posty: 477
Maciek pisze:
Jestem od jakiegoś już czasu pod wrażeniem twoich pomysłów, choć jako laik czasem nie bardzo wiem, o co ci chodzi.
Rozumiem, że w tym przypadku jest to projekt, który w jakiś sposób za pomoca rozmaitych czujników i przełączników ma sterować parametrami urządzeń - światłem, temperaturą i czymś tam może jeszcze...
Ja to sobie raczej myślę, ze maluchem to pola nie zaorzesz, bo nie do tego został przeznaczony. A maluch to nnd. Chyba też nie da się twoich potrzeb załatwić skryptem w bashu. Przypuszczam, że do tego są odpowiednie urządzenia i zapewne moduły do tego by takie czujniki i inne elementy podłączyć do komputera, i zapewne jest także wyspecjalizowane i nietanie oprogramowanie.

Padło na NND ale przecież temat dotyczy raczej dowolnego Linuksa :-). Dla kogoś, kto jakieś pojęcie o obsłudze portu COM z poziomu Linuksa (ma opanowane choćby C) najprawdopodobniej zakrawa to o banał. Przecież chodzi o wysyłanie tudzież odbieranie stringów znakowych z portu / na port COM :-)

Coby było przejrzyściej :-) poniżej idea przykładowego skryptu.

    - Oczekuj stringu "start" na porcie COM (sygnał otrzymywany z systemu alarmowego po rozbrojeniu)
    - Wyślij string "A10" (żądanie odczytu temperatury do urządzania X)
    - Obierz daną, która napłynie i przyporządkuj zmiennej temperatura
    - Wyślij string "A11" (żądanie odczytu poziomu oświetlenia do urządzania X)
    - Odbierz daną, która napłynie i przyporządkuj zmiennej poziom_oświetlenia
    - Jeśli poziom_oświetlenia mniejszy od zadeklarowanej stałej wyślij na COM string "111" (zaświeci się światło główne)
    - Jeśli temperatura większa od zadeklarowanej stałej wyślij na COM string "121" (uruchomią się wentylatory)
    - Codziennie godz. 21.50 wyślij na COM string "B10" (z głośników popłynie komunikat o zbliżającym się końcu zajęć, przypomnienie procedury porządkowej itd.)


Jak widać, jedyny mój problem / jedyne ograniczenie to nieumiejętność / niezdolność władania składnią i kompilatorami języka C dla Linuksa (w tym obsługa portu COM, czytanie zewnętrznego pliku konfiguracyjnego).

Udało mi się rozjaśnić troszeczkę ? :-)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 12:57 
Offline
Użytkownik

Rejestracja: środa, 23 stycznia 2008, 17:32
Posty: 691
Lokalizacja: Pabianice
A ja bym sie na Twoim miejscu zainteresowal seiciami komputerowymi.
Na rynku sa juz gotowe moduly, ktore potrafia sie w ten sposob
komunikowac. Podlaczenie koncowek w ten sposob do NND w
tym wypadku bylby banalem. NND wrecz sie prosi o takie
rozwiazanie. Wyobraz sobie np potrzebe zamontowania kamerki
w bloku obok gdzie juz istnieje siec. Podlaczasz te kamerke do juz
istniejacej sieci, nadajesz jej z poziomu NND adres IP i zabawa
sie zaczyna. Tak moze byc z dowolna inna koncowka jaka chcesz
podlaczyc. Bez mikrokontrolerow w koncowkach sie nie obedzie
chyba bo trudno bedzie zwalic cala prace na NND chocby ze wzgledu
na czasy reakcji.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 13:40 
Offline
Użytkownik

Rejestracja: niedziela, 23 września 2007, 14:35
Posty: 477
CyberDuck pisze:
A ja bym sie na Twoim miejscu zainteresowal seiciami komputerowymi.

W zastosowaniach automatyki przemysłowej / domowej typowy LAN ma przewagę minusów nad plusami. Choćby konieczność stosowania oddzielnych kabli pomiędzy urządzeniami a switchem, czy wysoka cena głupiego, pojedynczego modułu ethernetowego (ponad 100 zł). To nie to co sieciówka PCI produkowana na masową skalę, która kosztuje 10 zł. Ja wiem, że fajnie byłoby mieć wszystko na lanie. Niestety niewykonalne. Chyba, że jest się bogatym szejkiem, który śpi na złocie ;-)

W zastosowaniach profesjonalnych stosuje się dedykowane magistrale. Jedną z najpopularniejszych jest właśnie RS485. A czy masterem będzie urządzonko na uP, czy też dowolna maszyna PC, to już jest bez większego znaczenia. Tyle, że PC daje ci dużo więcej wygody i możliwości.

Nie obejdzie się chyba jednak od nastukania w C softu, który będzie czytał dedykowane dla siebie skrypty i na ich podstawie będzie wykonywał operacje na porcie COM. I mam dwie opcje, albo naumieć się programowania w C i obsługi dedykowanych kompilatorów (zajmie sporo czasu i nerwów, ale da największe możliwości), albo wynająć programistę i... dobrze mu zapłacić. Chyba że po drodze znalazłby się profesjonalista, który miałby ochotę uczynić to w myśl idei Open Source (soft pisany przez początkującego programistę będzie miał raczej wątpliwą jakość...)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 14:38 
Offline
Użytkownik

Rejestracja: środa, 23 stycznia 2008, 17:32
Posty: 691
Lokalizacja: Pabianice
Ceny tych modulow spadaja. Ale moze i Masz racje.
Pojedynczy modul ehernetowy mozna juz kupic za 50 zl i bez
przesady bo tych pojedynczych urzadzen nie bedzie az tak wiele.
Zorientowane w jednym miejscu mozna podlaczac w grupe.
Przewaga to duze odleglosci. Ba nawet mozesz sobie takie cos
postawic gdziekolwiek gdzie siega internet :
www.blulelan.pl/admin/1.php haslo demo :)
Ale jak tam sobie chcesz.
Lepiej odrazu napisz, ze tak wlasnie chcesz i masz w gdzies
dobre, sprawdzone sposoby :wink:

Najlepsze efekty uzyskasz jesli sie nauczysz C i sam sobie
cos takiego napiszesz. Poza tym to nie musza byc jakies bardzo
zaawansowane aplikacje bo reszte moze przejac inny podprogram
nie koniecznie oparty o C .


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 23:13 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
generalnie jesli chcesz zabierać sie do tworzenia wszystkiego od zera lepiej naucz się programować.
Może niekoniecznie c możesz spróbować również freepascala.

Jeśli jednak nie masz chęci/czasu na nauke od podstaw, to szukaj gotowych rozwiązań.
Piszesz że "uruchamiasz inteligentną pracownię"
czyli masz już wszystko, magistralę, protokół komunikacji, układ sterujący, moduły wykonawcze, pomiarowe itd

Obawiam sie że nie...
Zadajesz dużo mądrych pytań ale błądzisz...

Magistrala RS-485 ma ograniczenie do 32 urządzeń a przy długich przewodach prędkości nie są oszałamiające (100Kbit).
Do tego dochodzi brak gotowych rozwiązań sprzętowych.

Już kiedyś proponowałem zainteresowac sie magistrala 1-wire
Więc teraz trochę się rozpiszę aby cię zainteresować.
Do komunikacji potrzebujesz interfejsu zrobisz go np wg tego schematu
http://www.wiki.2o.pl/wiki/DS9097 lub kupisz na alledrogo
Do magistrali możesz podpiąc gotowe układy 1-wire lub stworzyć samemu na uP atmela.

Od strony programowej użyj OWFS - jakiś czas temu viater stworzył mi taką paczkę dla NND
http://forum.freesco.pl/viewtopic.php?t ... light=owfs
Viater ładnie opisał tam co i jak.
Działa u mnie na NND bez większych problemów i wstaje po restartach od kilkunastu miesięcy.

Sterowanie całością można rozwiązać na wiele sposobów.
Ja odpalam z crona skrypty które wykonuja jakieś zadania.
Np odczytują temperaturę, licznik wody,prądu itp i zapisują to bazy rrdtoola.

Na tej stronie pewien człowiek w fajny sposób udokumentował podobny projekt
http://idom.wizzard.one.pl/
wszystko to też działa na 1-wire

_________________
PECTOSOL to lek wykrztuśny stosowany w nieżytach gardła, przy suchym, męczącym kaszlu.
>>Jak mądrze zadawać pytania<<


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 27 sierpnia 2009, 23:33 
Offline
Użytkownik

Rejestracja: niedziela, 23 września 2007, 14:35
Posty: 477
Magistralę RS485 i jej tajniki znam całkiem nieźle. Urządzenia już są. Po kolei będą ukazywały się w Elektronice Praktycznej. Karta wykonawcza na przekaźnikach / triakach wyjdzie w EP jak dobrze pójdzie to jeszcze w tym roku (kolejka). Magistrala jest, protokół też. Wszystko będzie ewoluowało w naturalnym dla siebie tempie. Jednak pomysł PC z Linuksem jako master magistrali RS485 bardzo mi się spodobał. I chyba rzeczywiście wezmę się za zgłębianie obsługi COM w C, by stworzyć program obsługujący skrypty - zewnętrzne pliki tekstowe, które łatwo edytowalne, zapewnią wygodne aktualizacje "inteligencji pomieszczenia", również zdalnie po zalogowaniu się po ssh na NND z dowolnego miejsca.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 28 sierpnia 2009, 03:13 
Offline
Użytkownik

Rejestracja: środa, 23 stycznia 2008, 17:32
Posty: 691
Lokalizacja: Pabianice
Zapytam z ciekawosci pectosol ...
Jaka maxymalna odleglosc polaczenia miedzy interface
uzyskales na tym 1wire ?
I jedna sugestia. Mozna oprogramowac dowolne
mikrokontrolery pod te magistrale.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 28 sierpnia 2009, 11:19 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
specyfikacja pozwala 1-wire pozwala przekraczać 100m
U siebie w domu mam zatynkowany około 300m skrętki spiętej w gwiazdę. Na tej lini jest kilka DS1820 - działa bez problemu.
Co do dowolnych uP to nie wiem, znam atmela. Już najprostszy bascom pozwala na obsługe lini 1-wire i w roli mastera i slawe

_________________
PECTOSOL to lek wykrztuśny stosowany w nieżytach gardła, przy suchym, męczącym kaszlu.
>>Jak mądrze zadawać pytania<<


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 28 sierpnia 2009, 15:28 
Offline
Użytkownik

Rejestracja: środa, 23 stycznia 2008, 17:32
Posty: 691
Lokalizacja: Pabianice
No to ladnie :)
Ja sie raczej zaczolem specjalizowac w ST7 .
Praktycznie na kazdy mikrokontroler sa napisane w dowolnym
jezyku procedurki do transmisji wlasciwie juz nie tylko
dla samego 1-wire. Bardzo fajna sprawa. Gratulacje za samozaparcie
w wykonaniu projektu. Ja tez kiedys chcialem cos takiego zrobic, ale
czas i finanse mi troszke w tym przeszkodzily. Teraz juz sie tak nie chce.


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 11 ] 

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 20 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
Technologię dostarcza phpBB® Forum Software © phpBB Group
Hosting: Compus-Net
RobertKonik.pl