Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Intelligent afstandsmåler

Lignende præsentationer


Præsentationer af emnet: "Intelligent afstandsmåler"— Præsentationens transcript:

1 Intelligent afstandsmåler
P4 juni 2003 Gruppe 415

2 Program Sonarenhed Lars J Mikrocomputer HW Haukur
Mikrocomputer SW Michael Seriel kommunikation Jan Kommunikation med Lars S COM-port Databehandling i PC Katrine

3 Krav til sonar Der skal anvendes trigonometrisk skanning
Afstande skal måles mindst 10 gange i sekundet Tidspunkt for ekko skal registreres med 0,1 ms nøjagtighed Der skal videresendes tid og styresignaler til et mikrocomputersystem

4 Indhold Funktionsgenerator A/D-konverter Tællere Styrelogik Timing
Løsning af timingsproblem

5 Funktionsgenerator 2 x 555 kredsløb 40 Hz og 40 KHz
Forstærker med inverter og kondensator Lydgiver

6 A/D-konverter Komparator RC-led Prelfjerner

7 Tællere 2 tællere kaskade-koblet til angivelse af tid
2 switche til styring af adgang til databussen

8 Styrelogik Diverse logik til kontrol af IRQ*-signaler og switche

9 Timing

10 Løsning af timingsproblem
IRQ skal fjernes når både VMA og IACK er aktive IRQ forbindes til SET på en SR-latch (VMA & IACK) forbindes til RESET på samme latch

11 Konklusion Problem med IRQ Forslag til løsning
Velfungerende sonarenhed

12 Mikrocomputer HW Haukur

13 Indhold Minimumssystem Interrupts Hvad er et interrupt?
Interrupts fra hardware synspunkt. Autovektoriseret Brug af interrupts i intelligent afstandsmåler.

14 Minimumssystem Motorola 68000 CLK Power on reset RAM og ROM
Adressedekoder ACIA

15 Autovektoriserede interrupts
Bruges når enhederne ikke kan sende vektornummer. Kan ikke skelne mellem flere interrupts på samme niveau. Er håndteret som autovektoriserede hvis modtager VPA*. M68k fremkalder selv et vektornummer.

16 Interruptkontrolkredsløb

17 Konklusion Det konkluderes, at der er blevet konstrueret velfungerende mikrocomputer HW, der overholder de opstillede krav.

18 Mikrocomputer SW Michael

19 Indhold Modularisering Programmeringsmodel for M68k Assembler
Konklusion

20 Modularisering MAIN EKKO_V og EKKO_H INIT Initialisering
Modtage data fra M1 Gemme data i RAM INIT Beregne afstand og vinkel Kontrollere om der er fejl i sensorerne Sende data til en PC via M3

21 Programmeringsmodel for M68k

22 Programmeringsmodel

23 Assembler

24 Assembler

25 Assembler

26 Assembler

27 Konklusion Initialisering Modtage og lagre data
Fjerne ugyldige datasæt Beregne afstand og vinkel Fejldetektering Sende data til PC Integration

28 Seriel kommunikation Jan R

29 Indhold Krav Modularisering ACIA Registre Baudrate Konklusion

30 Krav ACIA’en skal konvertere den parallelle kommunikation fra M68k til seriel kommunikation til PC, og omvendt. Kommunikationsprotokollen mellem ACIA og PC skal være RS232. Kommunikationshastigheden mellem ACIA og PC skal være 9600 baud. Signalet imellem dem skal bestå af 1 startbit, 8 bit til data, ingen paritetsbit og 1 stopbit.

31 ACIA Baudrategenerator RS232-driver
Modularisering ACIA Baudrategenerator RS232-driver

32 ACIA Read/write memory set fra M68k.
Synkroniseret med en ekstern E clock. Synkron bus: E, VPA*, VMA*.

33 Registre RS (register select) R/W* (read/write) Kontrolregister
Statusregister Senderregister Modtagerregister

34 Kontrolregister Operationskarakteristikken
8 bit, som bliver inddelt på 4 grupper. CR0-CR1 ( counter division ) CR2-CR3-CR4 ( word select ) CR5-CR6 ( Transmitter ) CR7 ( Receiver interrupt enable ) % : Ingen interrupt. 8 databit, ingen paritet og 1 stopbit. Neddeling med 16.

35 Statusregister Indikerer status af den afsendte og modtagne del af ACIA’en. 8 bit read only, som deles op på funktioner: RDRF ( Receiver data register full.) TDRE ( Transmitter data register empty.) DCD* ( Data carrier detect. ) CTS*, FE, OVRN, PE, IRQ.

36 Baudrate RS232-standard: Max. 19200 baud. Minimumskrav: 4000 baud.
TS2MON-standard: 9600 baud. ACIA’ens neddeling: 16 gange. Frekvens: 153,6 kHz. Binær tæller.

37 Konklusion Kommunikationshastighed på 9600 baud.
TTL- og RS232-signalniveauerne overholdes for afsendelse og modtagelse. Fejl i Assembler programmet. Velfungerende kredsløb.

38 Kommunikation med COM-porten
Lars S

39 Indhold Krav til interface mellem M3-M4 Kommunikation med COM-port
Løsning til at afhjælpe tab af data Konklusion

40 Krav til interface mellem M3-M4
Envejs seriel kommunikation 9600 baud 1 start- og stopbit, 8 databit, ingen paritetsbit Data sendes som: 2 char: længde og vinkel 1 char: fejl

41 Kommunikation med COM-port
Initialiser COM-port* Modtag data fra COM-port Detekter tastetryk** Sæt COM-port til gammel indstilling * **

42 initcom() Opsætning iht. krav til interface: newtio.c_cflag =
BAUDRATE | CS8 | CLOCAL | CREAD; newtio.c_iflag = IGNPAR; newtio.c_cc[VMIN] = 2;

43 getcom()

44 Løsning til at afhjælpe tab af data
Nu: (l v) (l v) (e l) (v l) Løsning: Kun modtage 1 char ad gangen ( initcom() ) Modtage et start-tegn, fx: % = x  x (l v) (l v) (e) (l v)

45 Konklusion Den virker hvis ikke der sker tab af data og der ikke sendes fejl. Førnævnte løsningsmodel kan afhjælpe problemet med tab af data og fejl. Brugbar kommunikation, men skal optimeres.

46 Databehandling i PC Katrine

47 Indhold Krav Skrive ud på skærmen Konklusion
Beregning af vinkel Objekternes placering i zoner Fejlmeddelelse Konklusion Konklusion på samlet system

48 Krav Beregne i hvilken zone objektet befinder sig.
Vise objekternes placering i zoner. Give en advarsel ved fejl på sonar. Vise status på nuværende zoner og omdefinere længden og vinklen på zoner.

49 Skrive ud på skærmen Beregn vinkel:

50 Objekternes placering i zoner

51 Fejlmeddelelse int vinkelerr(int ang) { int ud =0; if (fmod(ang,4)==1)
return ud; }

52 Konklusion Udlæse data på skærmen Give en fejlmeddelelse
Vise status på zoner Omdefinere zoner

53 Konklusion på samlet system
Det samlede system virker ikke. Integration af modulerne lykkedes delvist. - Sonarenhed - Assembler-software De enkelte moduler virker hver for sig.

54 Demonstration af afstandsmåler


Download ppt "Intelligent afstandsmåler"

Lignende præsentationer


Annoncer fra Google