Co to jest system wbudowany?

Podobne dokumenty
Programowanie Systemów Wbudowanych. Specjalność uzupełniająca Systemy wbudowane

SYSTEMY WBUDOWANE CZASU RZECZYWISTEGO. Specjalność magisterska Katedry Systemów Elektroniki Morskiej

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

Szybkie prototypowanie w projektowaniu mechatronicznym

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów

Wykład 2. Mikrokontrolery z rdzeniami ARM

Technika mikroprocesorowa

WPROWADZENIE Mikrosterownik mikrokontrolery

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

Systemy wbudowane. Paweł Pełczyński

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Katedra Systemów Elektroniki Morskiej. Specjalność Systemy elektroniki morskiej

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Czujniki obiektowe Sterowniki przemysłowe

Inżynieria Wytwarzania Systemów Wbudowanych

MIKROKONTROLERY I MIKROPROCESORY

Specjalność: Komputerowe systemy sterowania i diagnostyki

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Języki i metodyka programowania

Technologie informacyjne - wykład 12 -

Podstawy programowania

Systemy na Chipie. Robert Czerwiński

ECTS - program studiów kierunku Automatyka i robotyka, Studia I stopnia, rok akademicki 2015/2016

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH

Automatyka przemysłowa na wybranych obiektach. mgr inż. Artur Jurneczko PROCOM SYSTEM S.A., ul. Stargardzka 8a, Wrocław

LEKCJA TEMAT: Zasada działania komputera.

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

Podstawy programowania. Wykład 1 Wstęp. Krzysztof Banaś Podstawy programowania 1

Historia modeli programowania

Politechnika Gdańska. Gdańsk, 2016

Specjalność: Komputerowe systemy sterowania i diagnostyki. Strona 1 z 5

Modelowanie procesów współbieżnych

Laboratorium demonstrator bazowych technologii Przemysłu 4.0 przykład projektu utworzenia laboratorium przez KSSE i Politechnikę Śląską

Mariusz Rudnicki PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1

Algorytm. a programowanie -

Komputery przemysłowe i systemy wbudowane

JĘZYKI PROGRAMOWANIA STEROWNIKÓW

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Zagadnienia egzaminacyjne AUTOMATYKA I ROBOTYKA. Stacjonarne I-go stopnia TYP STUDIÓW STOPIEŃ STUDIÓW SPECJALNOŚĆ

Systemy Czasu Rzeczywistego (SCR)

Specyfika projektowania Mariusz Rawski

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Zaawansowane technologie w nowoczesnych układach sterowania

Implementacja Gigabitowego Ethernetu na układach FPGA dla eksperymentów fizycznych

Razem godzin w semestrze: Plan obowiązuje od roku akademickiego 2016/17 - zatwierdzono na Radzie Wydziału w dniu r.

Programowanie w języku C++ Grażyna Koba

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Wykład 2. Mikrokontrolery z rdzeniami ARM

wbudowane October 7, 2015 KSEM WETI PG Komputery przemysłowe i systemy wbudowane Oprogramowanie systemów wbudowanych - wydajność Wydajność

Architektura mikroprocesorów TEO 2009/2010

Automatyka i Robotyka studia stacjonarne drugiego stopnia

System czasu rzeczywistego

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011

Zakład Układów Elektronicznych i Termografii ( Prezentacja bloków i przedmiotów wybieralnych

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Budowa i zasada działania komputera. dr Artur Bartoszewski

Podstawy Informatyki Systemy sterowane przepływem argumentów

Mechatronika i inteligentne systemy produkcyjne. Paweł Pełczyński ppelczynski@swspiz.pl

Struktura i działanie jednostki centralnej

Algorytmy i struktury danych

Zaawansowane programowanie w języku C++

PROGRAMOWALNE STEROWNIKI LOGICZNE

Funkcjonowanie i budowa modelu układu regulacji temperatury. Jakub Rotkiewicz AIR 2018

Projektowanie. Projektowanie mikroprocesorów

Algorytmy i Struktury Danych

Informatyka - studium realizacji dźwięku -

Inż. Kamil Kujawski Inż. Krzysztof Krefta. Wykład w ramach zajęć Akademia ETI

Elementy składowe systemu komputerowego

Systemy Czasu Rzeczywistego (SCR)

Opracowanie systemu sterowania wybranej linii technologicznej z uwzględnieniem zagadnień inżynierii oprogramowania

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Podstawy i języki programowania

Kierunek Informatyka stosowana Studia stacjonarne Studia pierwszego stopnia

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Adam Korzeniewski - p. 732 dr inż. Grzegorz Szwoch - p. 732 dr inż.

Opracował: Jan Front

Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15.

Sieci komputerowe. Jerzy Skurczyński Instytut Matematyki Uniwersytetu Gdańskiego Gdańsk, 2002 r.

Podstawy programowania. Wykład 3 Konstrukcje sterujące. Krzysztof Banaś Podstawy programowania 1

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

UKŁADY MIKROPROGRAMOWALNE

PRZEWODNIK PO PRZEDMIOCIE

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Komputer. Komputer (computer) jest to urządzenie elektroniczne służące do zbierania, przechowywania, przetwarzania i wizualizacji informacji

Systemy wbudowane - wykład 9. Systemy czasu rzeczywistego Notes. Systemy czasu rzeczywistego Notes. Systemy czasu rzeczywistego Notes.

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Specjalność uzupełniająca

Metody optymalizacji soft-procesorów NIOS

Urządzenia zewnętrzne

Podstawy programowania wykład

Wykład 1

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

PRZEWODNIK PO PRZEDMIOCIE

sterownik VCR v 1. 0

Prezentacja specjalności Inżynieria Systemów Informatycznych

Opisy efektów kształcenia dla modułu

Zagadnienia kierunkowe Kierunek mechanika i budowa maszyn, studia pierwszego stopnia

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7

Transkrypt:

Systemy Wbudowane

Co to jest system wbudowany? komputer (CPU, pamieć, I/O) wykonuje skończoną liczbę zadań, w skończonym czasie, w wiekszym systemie (który zwykle nie jest komputerem) 2

Co to jest system wbudowany? Komputer jest częścią większego systemu i zwykle nie wygląda jak komputer steruje innymi urządzeniami Niezawodność jest często najważniejsza (krytyczna) if the system fails someone might die Ograniczone zasoby Odpowiedź w czasie rzeczywistym 3

Co to jest system wbudowany? O jakich systemach mówimy? Czytniki kodów kreskowych Kamera Robot linii produkcyjnej Telefon kmórkowy Odtwarzacz CD Konroler twardego dysku.... Pompa insulinowa Sztuczny satelita Autonomiczny pojazd podwodny Fuel injector controls Medical equipment monitors PDAs Printer controllers Sound systems Rice cookers Telephone switches Water pump controllers Welding machines Windmills Wrist watches Stroustrup/Programming Nov'13 4

Co to jest system wbudowany? Przewidywalność Zarządzanie zasobami Pamięć! Dostęp do sprzętu Adresowanie bezwzględne Standardy programistyczne 5

Co to jest system wbudowany? HPEC - High Permormance Embedded Computing wysoki poziom funkcjonalności systemów przetwarzania sygnałów i obrazów Systemy do zastosowań militarnych

Systemy HPEC

System wbudowany Dobrze zaprojektowany system zapewnia jednocześnie wymagane opóźnienia i przepustowość minimalizując:

Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

System wbudowany System czasu rzeczywistego wymagania twarde Odpowiedź systemu w ściśle określonym czasie System czasu rzeczywistego wymaganie miękkie W większości przypadków odpowiedź systemu w ściśle określonym czasie Przewidywalność przede wszystkim! Correctness is even more important than usual B. Stroustrup. "Poprawność" nie jest pojęciem abstrakcyjnym! 12

Podstawowa struktura SW źródło: https://www.tutorialspoint.com/embedded_systems Sensor mierzy wielkość fizyczną i konwertuje ją na sygnał elektryczny; zapisuje zmierzoną wartość w pamięci Konwerter C/A (A-D Converter) zamienia sygnał analogowy na sygnał cyfrowy Jednostka obliczeniowa (Processor & ASICs) przetwarza dane i zapisuje je do pamięci Konwerter C/A (D-A Converter) zamienia sygnał cyfrowy na sygnał analogowy Element wykonawczy (Actuator) urządzenie mechaniczne występujące w układach regulacji, które na podstawie sygnału sterującego wypracowuje sygnał wejściowy do obiektu regulacji; porównuje wyjście z konwertera C/A z wartością oczekiwaną

Jednostka obliczeniowa Mikrokontroler Mikroprocesor Procesor CISC/RISC Procesor DSP System on a Chip (SoC) Układy konfigurowalne

Projektowanie systemu wbudowanego

Prototypowanie komputery jednoukładowe

SW Projektowanie Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW Projektowanie Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW Projektowanie Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW systemy operacyjne Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW systemy operacyjne Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW systemy operacyjne Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW systemy operacyjne Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW systemy operacyjne Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW systemy operacyjne Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

SW język programowania Źródło: https://m.eet.com/media/1246048/2017-embedded-market-study.pdf

Specyfika oprogramowania SW Przewidywalność Operacje C++ wykonywane są w stałym, przewidywalnym i mierzalnym czasie Wyjątki: alokacja pamięci (new), obsługa wyjątku (throw). Zwykle nieużywane w systemach czasu rzeczywistego! Prostota i czytelność! Mile widziany wysoki poziom abstrakcji Assembler niekoniecznie Czytelny kod wyrażający pomysł projektanta Nie optymalizuj, dopóki nie musisz Prawa Johna Bentley-a: Pierwsze prawo: Don t do it Drugie prawo (tylko dla ekspertów): Don t do it yet

Błędy oprogramowania SW Liczba usterek oprogramowania systemów wbudowanych rośnie! Internet of Things Programowanie na coraz wyższym poziomie abstrakcji Złożone algorytmy (machine learning) Integracja kodu programów Problemy Kod pisany przez programistów, którzy nie są projektantami sprzętu Kierownicy nie rozumieją problemów programistów i projektantów sprzętu Błędy o bardzo małym prawdopodobieństwie (ale katastrofalnych skutkach)

Błędy oprogramowania SW Źródło: https://users.ece.cmu.edu/~koopman/pubs/issre2016_keynote_slides.pdf

Bezpieczeństwo oprogramowania SW Źródło: https://users.ece.cmu.edu/~koopman/pubs/issre2016_keynote_slides.pdf

Jakość kodu źródłowego Źródło: https://users.ece.cmu.edu/~koopman/pubs/issre2016_keynote_slides.pdf

Ile czasu pisze się kod źródłowy SW? Źródło: https://users.ece.cmu.edu/~koopman/pubs/issre2016_keynote_slides.pdf

Standardy programowania C90 - ISO/IEC 9899:1990 Programming Language C. C99 - ISO/IEC 9899:1999 Programming Language C. C11 - ISO/IEC 9899:2011 Programming Language C. C++ - ISO/IEC 14882:2003 Programming language C++. MISRA C standard języka C zdefiniowany przez The Motor Industry Software Reliability Association (MISRA) w Wielkie Brytanii MISRA C:1998 MISRA C:2004 MISRA C:2012