Mikronapędy Sadecki Rówiński Skrobacz L08 cw5

Politechnika Rzeszowska im. Ignacego Łukasiewicza
Mikronapędy w systemach komputerowych
Rok studiów: IIEF-DI

Temat ćwiczenia:

Programy sterujące pracą silników z komutacją elektroniczną

Wykonali:

Adam Rówiński

Hubert Sadecki

Krzysztof Skrobacz

1. Cel ćwiczenia.

Celem ćwiczenia było napisanie programu, który obsługuje silnik prądu stałego przy użyciu specjalizowanych mikrokontrolerów.

2. Program napisany na laboratorium.

#include "reg515.sfr"

#include "lcd.h"

void sleep(int time);

void display(int i);

int main(void)

{

//zmienne

unsigned char key;

int wsp_wyp = 0;

T2I0 = 1;

T2R1 = 1;

CCEN = 8;

CRCH = 0xFF;

CRCL = 0x00;

CCH1 = 0xFF;

CLK = 1;

P3_5 = 0;

CCL1 = 123; // Rejestr odpowiadający za prędkość wirnika

lcd_init(); //Inicjalizacja wyswietlacza LCD

while(1)

{

wsp_wyp = (CCL1*100)/255; //obliczenie wsp. wypełnienia

sleep(2000);

key = get_kb();

display(wsp_wyp);

sleep(9000);

if(key == 'g') // jeżeli wciśnietą strzałka w górę

{

if(CCL1 < 255)

{

CCL1 = CCL1 + 1; // zwiększenie wsp. wypełnienia

}

}

if(key == 'd')

{

if(CCL1 > 1) // jeżeli wciśnietą strzałka w dół

{

CCL1 = CCL1 - 1; // zmniejszenie wsp. wypełnienia

}

}

}

return 0;

}

void sleep(int time)

{

int i;

int sleep = 0;

for(i = 0; i < time ; i++)

sleep += i;

}

void display(int i) // funkcja wyświetlająca wartość wsp wypełnienia

{

int x,y,z;

out_instr(0x1);

x = i/100;

if(x != 0)

out_char(x+0x30);

i = i - x*100;

y = i/10;

if(x != 0 || y != 0)

out_char(y+0x30);

i = i - y*10;

z = i;

out_char(z+0x30);

}

3. Wnioski.

Ćwiczenie wykonywaliśmy przy pomocy mikrokontrolera który zawiera w swojej strukturze jednostkę generującą przebiegi PWM. Pierwszym etapem naszych prac było napisanie kodu odpowiedzialnego za obsługę przycisków na których widniały strzałki w doł oraz w góre. Dodane zostały także ograniczenia które nie pozwalały przekroczenia wcześniej ustalonej prędkości maksymalnej(wartość z przedziału 0-255). Kolejnym krokiem było zrealizowanie wzoru obliczającego współczynnik wypełnienia oraz dodanie możliwości zmiany go w odpowiednich miejscach w kodzie. Za pomocą strzałek zmieniany był współczynnik wypełnienia, który odpowiadał za prędkość poruszania się silnika. Ostatnim krokiem było zaprogramowanie wyświetlacza na którym powinien widnieć współczynnik wypełnienia. Ćwiczenie zostało wykonane poprawnie, co potwierdził test na koniec wykonywania zadania.


Wyszukiwarka

Podobne podstrony:
cw5
ćw 5, cw5
ekon cw5
SPRAWOZDANIE cw5, studia, agrobiotechnologie
projektowanie zadań ćw5(b)
Analiza działów wodnych i zlewni?skidu Sądeckiego
sprawko mes cw5 4 04 2014r
cw5
Cw5 Drganie relaksacyjne id 123 Nieznany
cw5
GRI cw5 id 195771 Nieznany
Cw5 8
cw5 Tranzystor bipolarny
cw5 cieplo rozp 2
cw5, zadania
MEMS i Mikronapędy sprawozdanie z ćw 2
ćw5  11
Ćw5 Współczynnik wypływu cieczy
Technika Sensorowa CW5 T Pacholek

więcej podobnych podstron