lab.3, spr 3 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: 3

Temat ćwiczenia:

Algorytmy komutacji silników skokowych ze sprzężeniem zwrotnym

Wykonali:

Michał Kata

Tomasz Kordas

Data wykonania ćwiczenia:

04/04/2011

1. Cel ćwiczenia.

Celem ćwiczenia było napisanie programu, który obsługuje silnik skokowy wraz z hamowaniem pod koniec zadanej drogi kątowej.

2. Program

#include <reg515.sfr>

#include <lcd.h>

char tab[8];

int j=0;

unsigned char znak, znak2;

unsigned int liczba=0,liczba2, f=1, predkosc, opoznienie=50, obroty=0, liczba_obrotow=400;

int i, count;

void petla(unsigned int n)

{

int i;

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

{}

}

_interrupt 0 void przerwanie(void)

{

petla(opoznienie);

if (j>=8)

j=0;

P1=tab[j];

j++;

if (EX0==1)

{

obroty++;

}

if (liczba_obrotow-obroty<=200)

{

opoznienie++;

}

if (obroty>=liczba_obrotow)

{

EX0=1;

obroty=0;

opoznienie=50;

}

}

void main()

{

int z1;

int komutacja=1;

init();

IT0=1;

EAL=0;

while(1)

{

znak=get_char();

if ((znak!='\0') && (znak2!=znak));

if ((znak>=48) && (znak<=57))

{

if (count==0)

{

put_instr(0x80);

put_char(' ');

put_char(' ');

put_char(' ');

put_char(' ');

put_char(' ');

put_instr(0x80);

}

liczba=10*liczba+(znak-48);

put_char(znak);

count++;

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

znak2=znak;

}

if((znak=='e') && ( count>0))

{

f=liczba;

predkosc=0xFFFF-1000000/f;

liczba_obrotow=liczba;

CRCH=(predkosc>>8);

CRCL= predkosc;

P1=9;

j++;

petla(2000);

P1=10;

j++;

petla(2000);

EX0=1;

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

liczba=0;

count=0;

}

if (znak=='g')

if (komutacja<=2)

{

komutacja++;

count++;

z1++;

put_instr(0x88);

}

if (znak=='d')

if (komutacja>=1)

{

komutacja--;

count++;

z1++;

put_instr(0x88);

}

if ((komutacja==1) && ( count>0) && (z1>0))

{

put_char(49);

put_char('/');

put_char(52);

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

count=0;

z1=0;

}

if ((komutacja==2) && ( count>0) && (z1>0))

{

put_char(49);

put_char('/');

put_char(50);

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

count=0;

z1=0;

}

if ((komutacja==3) && ( count>0) && (z1>0))

{

put_char(51);

put_char('/');

put_char(56);

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

count=0;

z1=0;

}

if (komutacja==1)

{

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)

{

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)

{

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, jednak nie udało nam się napisać kodu, który wyhamowywałyby silnik przy zadanej prędkości kątowej.



Wyszukiwarka

Podobne podstrony:
lab.4, spr 4 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