Używa ktoś RTOS na Arduino 2560?

monitory, nagrywarki, itp

Moderatorzy: moderatorzy2014, moderatorzy

Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Używa ktoś RTOS na Arduino 2560?

Post autor: Jakub Jewuła »

hej

Używa ktoś z Was RTOS na Arduino?

Nie znalazłem nigdzie sensownego wątku omawiającego FreeRTOS a przydałby się...
Zainstalowałem, testuje jakieś tam miganie diodami ;) i Już mam pierwsze kwiatki, których nie potrafię wyjaśnić...

q
kuczy
Posty: 2199
Rejestracja: wtorek 17 lis 2015, 22:03

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: kuczy »

Jakub Jewuła,

RTOS na Arduino to taki dość słaby pomysł ze wzgledu na to, że większość zasobów zje Tobie RTOS.
Proponuję Tobie przesiadkę na STM32, są płytki "nucleo", na których uruchomisz RTOSa.

- nie powiem, że "bez problemu", ponieważ proframowanie STM to totalne coś innego niż Arduino w jego IDE, ale jeśli myślisz o rozwoju w tym kierunku, no to osobiście sądzę, że ten kierunek jest lepszy.
Jak dojadę do pracy to spróbuje wkleić fajny link do rosyjskiej strony, gdzie masz lekcje po lekcji, a do tego filmiki na YT.



http://narodstream.ru/programmirovanie-mk-stm32/

- radzę sobie włączyć "Tłumaczenie strony" w przeglądarce Chrome - tłumaczy jak to tłumacz, da się zrozumieć.
do tego w trakcie czytania czy ćwiczenia fajnie jest puścić jednocześnie film, ponieważ to bardzo pomaga jak widzisz co facet pisze / sprawdza.
Nie trafiłem na lepsze kompendium wiedzy w postaci takich samouczków.

powodzenia
Awatar użytkownika
JSt
Posty: 137
Rejestracja: wtorek 14 kwie 2015, 12:13
Lokalizacja: Kraina Kwitnącej Bulwy

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: JSt »

W całości popieram to, co napisał Kuczy. Mimo, że Atmega2560 ma swoją (całkiem niezłą) wydajność - systemy operacyjne proponuję jednak na ARM'y.
Miganie diodkami można testować na 8 bitowcach, ale już kilka wątków dość skutecznie zapcha mikrokontroler. Wadą takiej zabawy jest też to, że uczysz się na architekturze innej niż docelowa (jak też zauważył poprzednik). Szkoda czasu.
Jeszcze załączę linkę do podstawowego kursu, który mi się spodobał kurs-freertos-wprowadzenie
Pozdrawiam
Janusz

Ostatnio zamęczam: S800 na Omnibus F4
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: Jakub Jewuła »

Ja bardzo początkujący jestem na Atmedze, co dopiero tam :)

Po zastanowieniu się i paru próbach widzę, że RTOS niestety nie jest pacaneum ;) na problemy.
Im dalej w las to będzie ich zapewne więcej, choćby zabezpieczenie przed jednoczesnym
dostępem do modułów etc. Tak, że nie ma róż bez ognia...

Napisałem prosty kod typu dwie migające diody, kilka innych zadań i już okazało się, że nie
jest łatwo - zmienna globalna inkrementowana w jednym zadaniu, nie była widziana w innych.
Musiałem za x++, dać pusty delay, wtedy była. Taka niespodzianka...

Tak, że na razie rozkminiam jak ogarnąć temat w pętlach a RTOS będę testował w wolnym czasie hehe ;)

A przy okazji - chcę napisać program wizualizujący dane z Arduino, coś jak Virtuino na Androida,
ale dedykowane do mojego problemu. Miałaby to być grafika obrazująca proces technologiczny,
a na niej proste animacje jak przepływy, zmiana temperatur, otwierane / zamykane zawory etc.
Wszystko na podstawie danych odbieranych z RS. Również komunikacja w drugą stronę czyli sterowanie
zaworami, regulacja parametrów (zmienne). Czyli jak Virtuino, tylko bardzo spersonalizowane.
Najlepiej byłoby gdyby dało się to łatwo uruchomić na obu platformach czyli WIN i Android.
W sumie pod Windows mogłoby działać na jakimś darmowym emulatorze Androida nawet...

Podpowiecie jak się za to zabrać? Jaki język programowania? Może są takie systemy gotowe,
tylko ja nie znalazłem?

q
kuczy
Posty: 2199
Rejestracja: wtorek 17 lis 2015, 22:03

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: kuczy »

Jakub Jewuła, rozumiem, że takie masz zadanie - sterowanie np. zaworami i innymi elementami wykonawczymi, ww zamian.oyrzymasz.dane z wielu czujników ktore chcesz wyświetlać... i dla tego pomysł na RTOSa ?
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: Jakub Jewuła »

No tak. Minn. robię dla siebie sterowanie C.O. & C.W.U. (NIE kotłem!)
Nie żebym musiał, hobby takie ;)

- pomiary temperatury co kilka sekund, łącznie z reakcją na błędy,
- jakieś miganie kilkoma LEDami,
- sterowanie kilkoma pompami, łącznie z PWM - nie tylko ZAŁ/WYŁ,
- sprawdzanie obecności domowników,
- LCD,
- virtuino po WiFI.

ITD ITP. Jak za dużo rzeczy biega naraz to głupie LEDY potrafią napsuć krwi ;)

Próbowałem pod RTOS ale już po chwili trafiłem na problem taki, że zmienna globalna była widoczna
tylko wewnątrz zadania, które ją zmienia, chyba że zaraz po tym wstawiłem dowolnego delaya.
Stwierdziłem, że dalej będzie tylko gorzej ;)

Jest łatwo dopóki wszystko gra, ale gry trafi się awaria 1wire i lecą błędy odczytów to trzeba
mignąć nadprogramowo LEDem, wysłać jakiś komunikat, a jednocześnie nadal panować nad
tym co działa :) Albo jakiś dowcipas wyjmie SD z gniazda i trzeba to obsłużyć etc...

q
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: Jakub Jewuła »

Doczytałem co było źródłem błędu :)

Żeby zmienne były poprawnie widoczne z poziomu różnych zadań trzeba jest definiować jak volatile.
To wszystko :)

To może spróbuje coś więcej na tym zrobić niż miganie LEDami ;)

q
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: Jakub Jewuła »

Kończę właśnie projekt na Mega 2560 i powiem, że debugowanie mnie wykańcza :(
W zasadzie drak prawdziwego debugera...

No właśnie - czy znacie jakiś prawdziwy debuger dla Mega 2560? Taki, żeby można było obserwować jak
program jest realizowany linia po linii, obserwować i zmieniać(!) zmienne, najchętniej jeszcze modyfikować
kod z poziomu debugera z automatyczna rekompilacją... etc.

Chętnie jakby ogarniał też Atmege 328, choć to nie jest warunek konieczny...

JAkub
Tanner
Posty: 793
Rejestracja: wtorek 31 maja 2016, 20:08
Lokalizacja: Gdańsk/Kraków

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: Tanner »

Jeśli chodzi o sam development to poczytaj np o zestawieniu VCS + platformio - wychodzi takie "współczesne" środowisko pod arduino.
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Używa ktoś RTOS na Arduino 2560?

Post autor: Jakub Jewuła »

Dzięki, wygląda dość dobrze. Niestety nie ma debugera dla ATM. Ponoć ma być...

Apropo STM32.

Jak wygląda kwestia dostępności bibliotek dla modułów sprzętowych, typu termometry 1Wire,
różne na I2C jak LCD, barometr etc? Są dostępne od ręki czy trzeba strugać samemu?

No i pytanie pomocnicze - jaki będzie odpowiednik Adruino Mini Pro / Nano oraz Mega 2560?
W sensie - jedna płytka mała, tania z wystarczającą ilościa wyjść etc, druga z wszystkim...

Najtańsza z tego co widzę to STM32F103C8T6, a z droższych np. STM32F407G.
Tylko, że mi parametry Mega 2560 wystarczają do wszystkiego, a do większości łysa Atmega 328
na 8MHz bez rezonatora styknie :) Problem tylko w braku debugera bo można nieraz osiwieć...

q
ODPOWIEDZ