Slide 1

Podobni dokumenti
Slide 1

No Slide Title

Sistemi Daljinskega Vodenja Vaja 3 Matej Kristan Laboratorij za Strojni Vid Fakulteta za elektrotehniko, Univerza v Ljubl

DES11_realno

Microsoft Word doc

PowerPoint Presentation

Analiza vpliva materiala, maziva in aktuatorja na dinamiko pnevmatičnega ventila

MATLAB programiranje MATLAB... programski jezik in programersko okolje Zakaj Matlab? tipičen proceduralni jezik enostaven za uporabo hitro učenje prir

Microsoft Word - CNC obdelava kazalo vsebine.doc

Macoma katalog copy

SLO - NAVODILO ZA UPORABO IN MONTAŽO Št

Microsoft Word doc

VHF1-VHF2

DES

Upravljanje sistema COBISS Navodila za uporabo tiskalnika CITIZEN S310II V1.0 VIF-NA-27-SI

NABERTHERM - NT , Controller P300-sin

Logični modul LOGO!

IZGRADNJA PREDSTAVITVENE SPLETNE STRANI GLUCOWATCH Avtor: Marko Zajko Projekt delno financira Evropska unija, in sicer iz Evropskega socialnega sklada

ThiEYE i60+ 4K športna kamera Navodila za uporabo

Uvodno predavanje

Delavnica Načrtovanje digitalnih vezij

Microsoft Word - M docx

Slide 1

Navodila za programsko opremo FeriX Namestitev na trdi disk Avtor navodil: Martin Terbuc Datum: December 2007 Center odprte kode Slovenije Spletna str

Microsoft Word - ELEKTROTEHNIKA2_11. junij 2104

PowerPoint Presentation

Vaja04_Ver02

_ _BDA_CapitalSports_CS-Timer.indd

seminarska_naloga_za_ev

_ _ _BDA_Glasheizung_Klarstein_Update.indd

Sledilna ploščica in tipkovnica Uporabniški priročnik

MT40X Kratka navodila

Chapter 1

innbox_f60_navodila.indd

BeoLab 12 BeoLab 12 2 BeoLab 12 3

Kazalne naprave in tipkovnica Uporabniški priročnik

Slajd 1

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM POGOSTA VPRAŠANJA IN ODGOVORI Ljubljana, Verzija 1.0

ELEKTRONIKA ŠTUDIJ ELEKTRONIKE

Strojna oprema

SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: NAVODILA ZA UPORABO WLAN usmerjevalnik TP LINK Archer C5 Kataloška št.:

Prekinitveni način delovanja PLK Glavni program (OB1; MAIN) se izvaja ciklično Prekinitev začasno ustavi izvajanje glavnega programa in zažene izvajan

Vedno pod nadzorom, kjerkoli že ste

Microsoft Word doc

NAVODILA ZA UPORABO Smart watch JW018 POZOR! Ura vsebuje magnetne sestavine. Osebe z vgrajenim srčnim spodbujevalnikom (pacemaker) ali kakršnimi drugi

Microsoft Word - M docx

Kazalne naprave in tipkovnica Vodnik za uporabnike

NETGEAR R6100 WiFi Router Installation Guide

RAM stroj Nataša Naglič 4. junij RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni

DES

Diapozitiv 1

OBZORJE 2020 Marie Sklodowska-Curie Actions (MSCA)

Microsoft Word doc

PowerPoint Presentation

Optimizacija z roji delcev - Seminarska naloga pri predmetu Izbrana poglavja iz optimizacije

an-01-Stikalo_za_luc_za_na_stopnisce_Zamel_ASP-01.docx

101353_-an-01-sl-_vbodni_termometer

docx

Datum in kraj

Document ID / Revision : 0519/1.3 ID Issuer System (sistem izdajatelja identifikacijskih oznak) Navodila za registracijo gospodarskih subjektov

Navodila Navodila za uporabo iradio RPI3 Najbolj pogosta uporaba iradio TIV je kot spletni radio. Za tiste, ki boste prvič uporabljali spetni radio po

Navodila za uporabo aplikacije mlist - neposredni mentorji za Zdravniško zbornico Slovenije pripravila Gooya, interaktivni mediji, d.o.o. Ljubljana, m

Univerza v Ljubljani

UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Primoţ Kovačič AVTOMATIZACIJA STROJA ZA KRIVLJENJE PLOČEVINE Diplomsko d

Microsoft Word doc

Računalniški praktikum Projektna naloga - Izdelava spletne strani Avtor: Matej Tekavčič Skupina: Matej Tekavčič - koordinator Simon Vrhovnik Tine Kavč

Avtomatizirano modeliranje pri celostnem upravljanju z vodnimi viri

SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: NAVODILA ZA UPORABO Merilnik ogljikovega monoksida Testo Kataloška št.: 10 1

N HERMES OVICE Številka 26, oktober

Microsoft PowerPoint - 08 Inteligentne električne inštalacije.ppt [Združljivostni način]

SLO - NAVODILO ZA UPORABO IN MONTAŽO Št

1

Microsoft Word - M _mod..docx

INDUSTRIJA 4.0: PRILOŽNOSTI DIGITALNE PREOBRAZBE PROCESA RAZVOJA BARV IN PREMAZOV TOMAŽ KERN, BENJAMIN URH, MARJAN SENEGAČNIK, EVA KRHAČ

Zadeva: Ponudba

Microsoft Word - EV-2-projekt.doc

Vgrajeni sistemi Uvod & ponovitev C

Microsoft Word - UP_Lekcija04_2014.docx

PRIPOROČILA ZA OBLIKOVANJE KATALOGOV ZNANJA ZA MODULE V PROGRAMIH VIŠJEGA STROKOVNEGA IZOBRAŽEVANJA

Darko Pevec 1.a Informatika

an-01-sl-Plantronics_K100_Bluetooth_prostoročni_sistem

Področje uporabe

SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: NAVODILA ZA UPORABO Digitalni multimeter Fluke 179 Kataloška št.:

5 Programirljiva vezja 5.1 Kompleksna programirljiva vezja - CPLD Sodobna programirljiva vezja delimo v dve veliki skupini: CPLD in FPGA. Vezja CPLD (

INFORMACIJSKO KOMUNIKACIJSKE TEHNOLOGIJE ŠTUDIJ INFORMACIJSKO KOMUNIKACIJSKIH TEHNOLOGIJ

PowerPoint Presentation

Microsoft PowerPoint - DPN_II__05__Zanesljivost.ppt [Compatibility Mode]

Univerza v Ljubljani

4P N Vmesnik za priključitev v brezžično omrežje LAN <BRP069A41> Priročnik za montažo

NASLOV PREDAVANJA IME IN PRIIMEK PREDAVATELJA

PowerPointova predstavitev

Microsoft PowerPoint - MSPO_4_DiagramiVpliva.pptx

Microsoft PowerPoint - Objekti_gradnja.ppt

ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA

Delavnica Načrtovanje digitalnih vezij

ISOFT , računalniški inženiring

Microsoft PowerPoint - IPPU-V2.ppt

Diapozitiv 1

NEVTRIN d.o.o. Podjetje za razvoj elektronike, Podgorje 42a, 1241 Kamnik, Slovenia Telefon: Faks.: in

Transkripcija:

Univerza v Ljubljani Fakulteta za elektrotehniko PROCES PISANJA PROGRAMOV Mitja Nemec Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana, SLOVENIJA e-mail: mitjan@fe.uni-lj.si magic(66)

Proces programiranja Proces programiranja sestavlja: Definicija problema Priprava Pisanje Vzdrževanje PROCES PISANJA PROGRAMOV 2

Priprava Pisanje zahtev Izbira orodji Programski jezik Podporna orodja Načrtovanje arhitekture Načrtovanje programa PROCES PISANJA PROGRAMOV 3

Priprava pisanje zahtev Natančnost Natančnost Natančnost Natančnost Natančnost PROCES PISANJA PROGRAMOV 4

Priprava izbira orodji Programski jezik Makroji v urejevalniku besedil, Poslovni program na PC-ju, Procesno kritične aplikacije, Življensko kritične aplikacije Čas razvoja / čas učenja Podporna orodja Orodja za nadzor kode (SVN, GIT, ) Orodja za statično analizo COTS programska oprema (knjižnice, operacijski sistemi, ) PROCES PISANJA PROGRAMOV 5

Priprava - Načrtovanje Od zgoraj navzdol Čim manj medsebojnih povezav komunikacija prikaz zajem signala obdelava zajem ukazov PROCES PISANJA PROGRAMOV 6

Modularnost Priprava - Načrtovanje Skrivanje interne strukture PROCES PISANJA PROGRAMOV 7

Priprava - Načrtovanje PROCES PISANJA PROGRAMOV 8

Priprava - Načrtovanje PROCES PISANJA PROGRAMOV 9

Pisanje programa Detajlni načrt Pisanje Razhroščevanje Testiranje Integracija Ponovno pisanje Optimizacija Pisanje dokumentacije PROCES PISANJA PROGRAMOV 10

Pisanje programa - detajlni načrt Psevdokoda if pogoj naredi nekaj else naredi nekaj drugega PROCES PISANJA PROGRAMOV 11

Pisanje programa - detajlni načrt Diagram poteka PROCES PISANJA PROGRAMOV 12

Pisanje programa - detajlni načrt Diagram stanj Naprava izklopljena Napajanje Inicializacija Preveri stanje Standby Zelena tipka Ce kontaktor ni notri vklopi bootstrap Pogoj 1 = Rudi je v napačnem stanju + Oscilator ne dela + DC-link je prevelik + RMS toka je prevelik + Rudi javlja napako. Pogoj 1 Pogoj 1 + timeout Pogoj 2 = Pogoj 1 + rudi_fault Timeout + Rdeca tipka Pogoj 2 Preveri stanje Rudija OK Cakaj na U_line RMS > OK Kontaktor notri Ali pa Timeout Izklopi bootstrap Timeout + Rdeca tipka+ U_line RMS < Pogoj 2 Sinhroniziraj OK Napaka Rdeca tipka + U_line RMS < + PLL_out Offset tok. sond Pošlji opis Pogoj 3 = Pogoj 2 + Udc < + Udc > Rdeca tipka + U_line RMS < + PLL_out OK Vklop DC Pogoj 3 PROCES PISANJA PROGRAMOV 13 Rdeca tipka + U_line RMS < + PLL_out Bootstrap OK

Pisanje programa - detajlni načrt Blokovna shema AdcResult0 +AdcResult3 +AdcResult6 +AdcResult9 = vsota_u_line_adc u_line.raw u_line.gain fir.input 1 0 u_line.offset IR_in FIR fir PER_pll(); u_line.input = u_line_harm.in ETRA_FIXED_ MACRO (DFT 1,3,5,7,9,) 1,3,5,7,9 1,3,5,7,9 - - u_line_harm.suma u_line_harm.sumb 1 0 error_mean.in REPETITIVE_full u_line_harm.out u_line.first DC_FIXED _MACRO error_mean.mean repetitive.in pll.base repetitive.delay repetitive repetitive.out 1 0 inv_filt.in status_flags.control_on DIFF_second inv_filt IR_in 1 0 inv_filt.out smo sinhronizirani nismo sinhronizirani (status_flags.housekeep = 0, status_flags.control_on = 0) 1 0 status_flags.pll_locked pll.phase PI pll.out pll.out 0 out.harmonic 1 AdcResult5 i_line.gain i_line.input DC_FIXED_ MACRO i_line.dc i_line_mean.mean PID_FIXED _MACRO i_mean_reg.out out.i_mean_reg 0 1 out.duty PWM i_line.offset (kalibracija) 1 status_flags.offset_calib 0 i_mean_reg.ref = 0 status_flags.housekeep i_line_harm.in DFT_FIXED_ MACRO i_line_harm.out i_line_harm.suma i_line_harm.sumb x i_line.first x y i_line.norm AdcResult4 u_dc.gain u_dc.input U_dc_mean.In DC_FIXED_ MACRO u_dc.dc u_dc_mean.mean PID_FIXED u_dc_reg.out _MACRO out.dc_reg 0 1 u_dc.offset u_dc_reg.ref PROCES PISANJA PROGRAMOV 14

Pisanje programa podatkovne strukture Ne pozabi na načrtovanje podatkov Kompleksni podatkovni tipi Kazalci Tabele Skladi Vrste PROCES PISANJA PROGRAMOV 15

Pisanje programa, zahtev - pregledi Pregledi Napake se odkrijejo zgodaj (pregledi zahtev) Več oči več vidi Trening za neizkušene Vzpostavljanje enotnih rešitev PROCES PISANJA PROGRAMOV 16

Ponovno pisanje programa Ponovno pisanje kode Razlogi Predolga funkcija Preveč medsebojnih povezav Pregloboko gnezdenje Uporaba komentarjev za razlago nerazumljive kode Postopna zamenjava kode Shrani delujočo kodo PROCES PISANJA PROGRAMOV 17

Optimizacija programa Optimizacija Razlogi -> nikoli ne optimiraj brez razloga Natančno določi mesto optimizacije Shrani delujočo kodo Postopna zamenjava kode PROCES PISANJA PROGRAMOV 18

Vzdrževanje Osnovni pogoji za uspešno vzdrževanje Dostop do istih orodji Nadzor nad verzijami programa Ustrezen nivo kode Dokumentacija programa Sledenje hroščem PROCES PISANJA PROGRAMOV 19

Zakluček Priprava na delo je pol dela Imej nadzor nad verzijami programa Izvajaj preglede kode ter zahtev Ne optimiraj dokler ni potrebno PROCES PISANJA PROGRAMOV 20