lab.4, spr 4 Michał Kata Tomasz Kordas L05


Politechnika Rzeszowska im. Ignacego Łukaszewicza

Mikronapędy w systemach komputerowych

Rok studiów: II FD

Grupa laboratoryjna: L05

Numer ćwiczenia: 4

Temat ćwiczenia:

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

Wykonali:

Michał Kata

Tomasz Kordas

Data wykonania ćwiczenia:

18/04/2011

1. Cel ćwiczenia.

Celem ćwiczenia było napisanie programu, który obsługuje silnik z komutacją elektroniczną wraz z możliwością ustawienia prędkości i kierunku obracania silnika.

2. Program

#include <reg515.sfr>
#include <lcd.h>

char tab[8];
int j=0;
unsigned char klawisz, klawisz2;
unsigned int cyfra=0, cyfra2, f=1, predkosc;
int i, count;
unsigned int halotron;

/*
unsigned char tabP1[6]={222,219,249,237,239,246};
unsigned char tabP4[6]={3,1,5,4,6,2};
*/

_interrupt 5 void przerwanie(void)
{

TF2 = 0;
if (P4%6 == 3)
P1=222;
else if(P4%6 ==1)
P1=219;
else if(P4%6 ==5)
P1=249;
else if(P4%6 ==4)
P1=237;
else if(P4%6 ==6)
P1=239;
else if(P4%6 ==2)
P1=246;


}


void main()
{
int zn1;
int komutacja=1;
init();
while(1)
{
klawisz=get_char();

if ((klawisz!='\0') && (klawisz2!= klawisz));
if ((klawisz >=48) && (klawisz <=57))
{
if (count==0)
{
put_instr(0x80);
put_char(' ');
put_char(' ');
put_char(' ');
put_char(' ');
put_char(' ');
put_instr(0x80);
}
cyfra=10* cyfra +( klawisz -48);
put_char(klawisz);
count++;
for(i=0;i<20000;i++);
klawisz2= klawisz;
}
if((klawisz =='e') && ( count>0))
{
if((cyfra > 100) && (cyfra < 600))
{
f=cyfra;
predkosc=0xFFFF-1000000/f;
CRCH=(predkosc>>8);
CRCL= predkosc;
}

for(i=0;i<20000;i++);
cyfra=0;
count=0;
}
if (klawisz =='g')
if (komutacja<=3)
{
komutacja++;
count++;
zn1++;
put_instr(0x88);
}
if (klawisz =='d')
if (komutacja>=1)
{
komutacja--;
count++;
zn1++;
put_instr(0x88);
}

if ((komutacja==1) && ( count>0) && (zn1>0))
{
put_char(49);
put_char('/');
put_char(52);
for(i=0;i<20000;i++);
count=0;
zn1=0;
}
if ((komutacja==2) && ( count>0) && (zn1>0))
{
put_char(49);
put_char('/');
put_char(50);
for(i=0;i<20000;i++);
count=0;
zn1=0;

}
if ((komutacja==3) && ( count>0) && (zn1>0))
{
put_char(51);
put_char('/');
put_char(56);
for(i=0;i<20000;i++);
count=0;
zn1=0;

}
EAL=1;
ET2=1;
T2R1=1;
T2I0=1;
if (komutacja==1)// komutacja 1/2
{
tab[0] = 8;
tab[1] = 2;
tab[2] = 4;
tab[3] = 1;
tab[4] = 8;
tab[5] = 2;
tab[6] = 4;
tab[7] = 1;
}
if (komutacja==2)// komutacja 1/4
{
tab[0] = 9;
tab[1] = 10;
tab[2] = 6;
tab[3] = 5;
tab[4] = 9;
tab[5] = 10;
tab[6] = 6;
tab[7] = 5;
}
if (komutacja==3)// komutacja 3/8
{
tab[0] = 8;
tab[1] = 10;
tab[2] = 2;
tab[3] = 6;
tab[4] = 4;
tab[5] = 5;
tab[6] = 1;
tab[7] = 9;
}
}
}

3. Wnioski.

Do wykonania ćwiczenia wykorzystaliśmy program z poprzednich zajęć. Program uruchamia silnik, mimo wszelkich starań nie udało nam się napisać kodu, który obsługiwałby prędkości podane przez użytkownika i wybór kierunku obrotu silnika.



Wyszukiwarka

Podobne podstrony:
lab.3, spr 3 Michał Kata Tomasz Kordas L05
lab.2, spr 2 Michał Kata Tomasz Kordas L05
Lab 6, Spr. 6, Akademia Górniczo - Hutnicza
Lab 8, Spr 8, Akademia Górniczo - Hutnicza
hydrologia lab 1 spr, Laborki
lab spr 25, Lab 25, Sprawozdanie
sem IV MG lab knsp ozn kąta tarcia wewn spójności gruntów w próbie?zpośredniego ścinania
Fiza lab spr.1, Fizyka
KS lab spr cw 5 [6]
LAB SPR
KS lab spr cw 3 [4]
KS lab spr cw 4 [5]
Lab 5 spr
sem IV MG lab knsp ozn kata tarcia wewn i spojnosci w probie ściskania
15 Michal Wasko Tomasz Czerner
Wnioski do spr z elektry 3, PW SiMR, Inżynierskie, Semestr V, syf, laborki, Lab. Ukł. Napędowych
ściskanie(lab), Studia, pomoc studialna, Sprawozdania Laborki, Wytrzymałość spr.nr2

więcej podobnych podstron