Hati Ikhlas – Pikiran CerdasPertemuan ke-9 Sistem Embedded Hati Ikhlas - Pikiran Cerdas Sistem Embedded

Sistem Embedded
Program Studi Teknik
Elektro Unsoed
PERTEMUAN KE -9
Oleh :
Acep Taryana, S.Si., M.T
Priswanto, S.T., M.Eng

Ikhtisar
• Gambaran Embedded System
• Outline Pembelajaran Embedded System Konvensional ,
Modern
• Tahapan Pembelajaran
• Example : Blinky, Dhining Philosoper Problem, Game Fly
n Shoot
• State Machine
• Tugas

• Most computer systems are event-driven

Outline Pembelajaran

Konvensional
Concurrent
Concept:

System Design:
UML : State-Machines,
Framework

Konsep Thread, Seksi
Kritis (critical section),
Mutek, Sinkronisasi,
Semaphore, Lock Unlock,
Problem : Reader &
Writer(RWP), ProducerConsumer (PCP), Dhining
Philosopher (DPP)

Object-Oriented
Programming :
Abstract Class,
Interface, Inheritance,

Polymorphism

Microcontrollers
Microprocessors
Assembly
Langguage
RTOS

Outline Pembelajaran Modern
Framewor
Concurrent Concept:
k,
Tools
BSP
*

Konsep Thread, Seksi
Kritis (critical section),
Mutek, Sinkronisasi,
Semaphore, Lock Unlock,

Problem : Reader &
Writer(RWP), ProducerConsumer (PCP), Dhining
Philosopher (DPP)

System Analysis and
Design:
UML : State-Machines,
Framework

Object-Oriented
Programming :
Abstract Class, Interface,
Inheritance, Polymorphism

Microcontrollers
Microprocessors
Assembly Langguage
RTOS
*BSP (Board Support Package)seperti Texas
Instrument, Arduino, Raspberry, ARM


Selamat
Datang
Abad 21

Tahapan Pembelajaran
• Embedded Analysis

• Embedded Design

• User Acceptance

• Embedded Verification
& Validation

• Embedded Testing
• Embedded Programming

Requirement System :
Example 1 : Blinky Project


• Example 1 :
1. Gambarkan Statechart dalam tools yg
digunakan.
2. Generate Code into C++
3. Upload Code C++ ke dalam Board yang
digunakan.
4. Test

Relasi State Machine, BSP, Tools dan
Framework
Your Code

Tools, Framework

Toaster oven state machine with
entry and exit actions.

Ilustrasi Blinky
REQUIREMENT SYSTEM : Behavior dari Blinky

dimodelkan dengan state machine sederhana.
Transisi awal adalah masuk state “off”, yang
mengubah lampu LED menjadi mati dalam Entry
Action. Ketika event TIMEOUT tiba, maka state
“off” bertransisi ke state “on”, yang akan
mengubah lampu LED hidup dalam Entry Action.
Ketika event TIMEOUT tiba dalam state “on”,
maka state “on” akan bertransisi kembali ke
state “off”, yang menyebabkan eksekusi Entry
Action, yang mana LED dimatikan. Siklus ini
berjalan terus menerus (repeats forever)

Arahkan Mouse ke bidang Gambar,
Klik Tombol RUN untuk menjalankan aplikasi Blinky !!!

State Machine Blinky

State Machine Blinky

Ilustrasi Dhining Philosoper Problem

(DPP)

REQUIREMENT SYSTEM :

Lima filsuf bertemu untuk makan malam. Mereka duduk di
sekeliling meja makan yang bentuknya bulat. Tetapi saat
mereka akan makan, ada persoalan praktis yang muncul.
Spaghetti yang dihidangkan sebagai menu makan malamnya
begitu ruwet dan licin, sehingga untuk memakannya
diperlukan dua garpu sekaligus. Sementara itu, meja sudah
diatur sedemikian hingga hanya ada satu garpu untuk setiap
filsuf.
Aktivitas hidup setiap filsuf dianggap hanya ada dua, yaitu
makan dan berpikir yang dilakukan secara bergantian. Ketika
filsuf lapar, filsuf mencoba memperoleh garpu kiri dan kanan
sekaligus dengan urutan manapun. Jika sukses memperoleh
dua garpu sekaligus, filsuf makan. Kemudian bila telah selesai
makan, filsuf meletakkan kembali garpunya dan melanjutkan
berpikir.
 

Bagaimana caranya supaya semua filsuf dapat makan secara
adil, dalam arti tidak ada filsuf yang makan terus menerus
atau terus menunggu karena garpu yang dibutuhkan tidak
selalu tersedia ????

Arahkan Mouse ke bidang Gambar,
Klik Tombol RUN untuk menjalankan aplikasi DPP !!!

State Machine Dhining Philosoper
Problem

Ilustrasi Game Fly n Shoot
REQUIREMENT SYSTEM :
Tujuan game ini untuk navigasi sebuah
pesawat luar angkasa melalui
terowongan horizontal tak berujung
dengan berbagai ranjau. Setiap benturan
(collision) dengan terowongan atau
ranjau akan menghancurkan pesawat.
Jika aplikasi ini disimulasikan dalam PC

maka anda dapat menggerakkan
pesawat atas dan bawah dengan
menekan tombol Up-arrow dan Downarrow. Atau melalui potentiometer Wheel
jika menggunakan board EV-LM3S811.
Anda dapat menembakkan misil untuk
menghancurkan ranjau-ranjau di dalam
terowongan dengan menekan Spacebar
pada PC, atau User Button pada board
EV-LM3S811. Skor terakumulasi pada rit
30 point per detik untuk bertahan dan
menghancurkan ranjau –ranjau. Game ini

Arahkan Mouse ke bidang Gambar,
Klik Tombol RUN untuk menjalankan aplikasi Game !!!

State Machine Missile (dalam Fly n
Shoot)

State Machine
• State machines complement imperative languages (C, C++,

Java, C#, etc.)
• State machines “explode” without state hierarchy
• State machines are impractical without a framework

Once you try an event-driven, state machine
framework you will not want to go back to “spaghetti”
and raw RTOS/OS.

Welcome to the 21 century!

Tugas I
• Baca catatan kuliah Real-Time Programming……,
perdalam tentang konsep Mutek, Seksi Kritis,
Sinkronisasi.
• Susun makalah kecil tentang Mutek, Seksi Kritis !
• Makalah dibuat per kelompok, masing-masing 5 orang.
• Dikumpulkan tanggal 20 Mei 2015 saat kuliah.

Daftar Referensi
1. Catatan Kuliah Real-Time Programming, Program Studi

Teknik Elektro Unsoed, 2004
2. Practical UML Statecharts in C/C++, Edisi Kedua:
Event-Driven Programming for Embedded System,
Miro Samek