Archiwum kategorii: MATLAB

Informacje o MATLABie, jego narzędziach, a także o dobrych praktykach programistycznych związanych ze środowiskiem. Nietypowe rozwiązania i ciekawostki.

MATLAB - Kurs podstawowy [FILM]

Jeżeli jesteś stałym bywalcem naszego bloga, to być może jest Ci znany, opublikowany nieco ponad 3 lata temu, „MATLAB tutorial”. Ten tekstowy poradnik, był w zamyśle przeznaczony dla osób początkujących, które nie miały wcześniej styczności z MATLABem. Jakkolwiek treść tego tutoriala jest nadal aktualna i warto z niej korzystać, to jako uzupełnienie polecam serię filmów opublikowanych w 2018 roku pod wspólnym tytułem „Matlab – Wprowadzenie”.
Czytaj dalej MATLAB - Kurs podstawowy [FILM]

Jak uprościć i przyspieszyć program w MATLABie? [FILM]

Czy zdarzyło Ci się kiedyś, że Twój program realizujący stosunkowo proste obliczenia wykonywał się bardzo długo? A może jakaś pętla spowodowała, że MATLAB przestał reagować na polecenie Ctr+c?
Przyczyną może być niezoptymalizowany pod kątem obliczeń wektorowych program. Okazuje się bowiem, że klasyczne podejście do programowania znane z języków niższego poziomu, gdzie na przykład do kopiowania elementów musimy używać pętli, nie jest wskazane w produkcie MathWorksa. MATLAB jest zoptymalizowany pod kątem obliczeń macierzowo-wektorowych i wykorzystanie tej cechy umożliwia uzyskanie uproszczenia programu, a przede wszystkim skrócenie czasu obliczeń. Zapraszam do lektury wpisu oraz zobaczenia filmu na Youtube dotyczącego tego tematu, link do którego znajduje się na końcu posta.
Czytaj dalej Jak uprościć i przyspieszyć program w MATLABie? [FILM]

Matlab dla każdego

W oczekiwaniu na nowe wpisy dotyczące programowania w MATLABie, chciałbym zwrócić Waszą uwagę, a szczególnie osób zainteresowanych rozpoczęciem pracy w tym środowisku obliczeniowym, na dostosowane do różnych potrzeb i elastyczne wersje licencji, które oferuje MathWorks. Obecnie do dyspozycji są cztery główne rodzaje licencji: standard, education, home i student. Każda z nich dodatkowo jest podzielona na podkategorie, dzięki czemu każdy znajdzie wersję najbardziej optymalną do swoich potrzeb. Co ciekawe, producent już za 35 EUR oferuje dostęp do wersji studenckiej. Jest to w pełni funkcjonalna wersja Matlaba, której głównym ograniczeniem jest wykorzystanie programu wyłącznie na potrzeby i czas trwania studiów. Czytaj dalej Matlab dla każdego

Blog reaktywacja

Po dłuższej chwili nieaktywności na blogu, wracamy ze zdwojoną siłą i workiem pomysłów na nowe tematy. Nie jest to, jak można by myśleć, postanowienie noworoczne, do realizacji którego zabraknie za chwilę zapału. Z nową energią i nowymi autorami będziemy wypełniać nasz blog treściami, które, mamy nadzieję, Was zainteresują. Nowe wpisy i artykuły będą pojawiać się co najmniej dwa razy w miesiącu. Ich forma będzie różna; od tradycyjnych postów, przed dłuższe artykuły, po formę wideo: tutoriale, przewodniki „how to” oraz ciekawostki ze Świata MATLABa. Poruszone problemy będą natury praktycznej, a więc akcent będzie postawiony na rozwiązywanie konkretnych zagadnień i problemów inżynierskich. Nieco więcej niż dotychczas będzie tematów związanych ze statystyczną analizą danych, przetwarzaniem sygnałów, czy np. obsługą sprzętu pomiarowego. Nie zabraknie również treści poświęconych podstawom programowania w MATLABie. Każdy, niezależnie do tego czy zaczyna swoją przygodę z MATLABem czy jest bardziej zaawansowanym użytkownikiem, znajdzie na naszym blogu coś dla siebie. Już niebawem opublikujemy nieco więcej szczegółów i zakres tematyczny najbliższych wpisów. Stay tuned 😊 A dla tych którzy nie mogą się doczekać, przypominamy, że dostępny jest nasz tutorial w formie tekstowej, wprowadzający w arkana użytkowania MATLABa. Chcesz lepiej poznać MATLABa? Jesteś w dobrym miejscu!

LEGO EV3 i regulacja PID: Identyfikacja oraz automatyczne strojenie

Implementacja algorytmu PID to nie wszystko

Dzisiejszy post będzie kontynuacją ciągu artykułów na temat tworzenia algorytmu sterowania mobilnym robotem w środowisku Simulink. Dla przypomnienia, w ostatnim wpisie zajęliśmy się omówieniem robota oraz implementacją podstawowych algorytmów obsługujących silniki, doczytujących dane z enkoderów i wyliczających faktyczne prędkości obrotowe oraz liniowe kół robota. Również, na samym końcu rozpoczęliśmy implementację regulatora PID pozwalającego zadawanie konkretnej prędkości robota.

Czytaj dalej LEGO EV3 i regulacja PID: Identyfikacja oraz automatyczne strojenie

LEGO EV3, ciąg dalszy: Sterowanie robotem mobilnym

Roboty w akcji

W ostatnim wpisie na temat programowania LEGO Mindstorms z wykorzystaniem MATLABa i Simulinka przedstawione zostały podstawowe zagadnienia związane z podłączaniem sterownika LEGO EV3 do komputera, komunikacją z Simulinkiem oraz wgrywaniem utworzonych algorytmów do urządzenia LEGO. Dziś, tak jak obiecano, rozpoczynamy cykl prezentujący wybrane roboty w akcji.

Na pierwszy rzut zajmiemy się programowaniem klasycznego robota mobilnego, jeżdżącej platformy, na podstawie której omówionych zostanie kilka ważnych aspektów tworzenia algorytmów sterujących robotem, przydatnych również przy innych konstrukcjach.

Czytaj dalej LEGO EV3, ciąg dalszy: Sterowanie robotem mobilnym

Programowanie LEGO Mindstorms EV3 z użyciem Simulinka

Zabawa na poważnie

Klocki LEGO większości z nas kojarzą się z beztroską zabawą w dzieciństwie, gdy czas nie odgrywał żadnej roli, kluczowe było natomiast stworzenie konstrukcji, która efektownie zapełni nasz plac budowy, skutecznie ochroni przed atakami nieprzyjaciela, a przy okazji wzbudzi podziw w oczach zapatrzonych w nas rodziców i dziadków. Zapewne dużo mniej osób miało styczność z serią LEGO Mindstorms, w której oprócz samych klocków znajdziemy także zestaw podzespołów elektromechanicznych, takich jak czujniki czy serwomotory oraz kontrolująca je jednostka centralna. Zestaw LEGO Mindstorms dzięki połączeniu tych wszystkich wymienionych elementów w całość pozwala nam na tworzenie programowalnych robotów.
Czytaj dalej Programowanie LEGO Mindstorms EV3 z użyciem Simulinka

ThingSpeak - przykłady

 

ThingSpeak - przykłady

Do korzystania z ThingSpeak potrzebne jest nam źródło danych, stałe połączenie z internetem oraz odrobina cierpliwości do czytania dokumentacji. ThingSpeak współpracuje z przeróżnymi systemami i siłą rzeczy nie istnieje uniwersalna formuła, która pozwoliłaby na natychmiastową konfigurację systemu w każdym przypadku. Na szczęście czytanie dokumentacji w przypadku ThingSpeak nie sprawia kłopotu, a dużym ułatwieniem na start są liczne przykłady.

Czytaj dalej ThingSpeak - przykłady

Dokładność numeryczna

Poniższy wpis autorstwa pana Grzegorza Knora otrzymał wyróżnienie w naszym czerwcowym konkursie

Wstęp

Poniższy wpis bazuje na wątku dokładność numeryczna z polskiego forum matlab.pl.
Otóż w 2009 roku zetknąłem sie z problemem, który może być zilustrowany za pomocą następującego pseudokodu:

Dla każdego k ze zbioru [0,1, 0,2, 0,3,... 5]

Jeśli zaokrąglona wartość k jest równa k

Wydrukuj k

Czytaj dalej Dokładność numeryczna