Processing math: 100%

Prijavi problem


Obeleži sve kategorije koje odgovaraju problemu

Još detalja - opišite nam problem


Uspešno ste prijavili problem!
Status problema i sve dodatne informacije možete pratiti klikom na link.
Nažalost nismo trenutno u mogućnosti da obradimo vaš zahtev.
Molimo vas da pokušate kasnije.

Моделовање електричних машина и уређаја I

Модел једносмерног мотора

На следећој слици видимо анимацију рада једносмерног мотора. Једносмерни мотор ради на принципу одбијања и привлачења електромегнетних поља. Један крај електромагнета ротора бива одбијен а други привучен. Када ротор обиђе полукруг комутатор мења поларитет на намотајима ротора чиме омогућава даљи рад мотора. Овај принцип рада је приказан на следечој слици:

_images/dc.gif

Додатни задаци

Назив задатка: Бинарно бројање помоћу тајмера - опис и изворни код

Бинарно бројање је дато кроз два примера где промену броја изазивају или притисак тастера или тик тајмера.

Код овог бројања на бази тајмера, тајмер броји до 2000 и онда се ресетује што значи да почиње да броји од почетка. На сваке две секунде се промени вредност бираног броја чији се декадни еквивалент прикаже на дисплеју.

Eлектрична шема кола:

_images/sema1.png

Повежите компоненте као на следећој слици:

_images/projekat2a.png

Вежба је успешно урађена као добијемо следећи резултат:

_images/binarni_brojac.gif

Вежба је успешно урађена, ако добијемо ефекат као на следећем видеу. Кликните на видео да би се покренуо:

Ово је изворни код програма који је потребно уписати у микробит:

 
1
import microbit as mb
2
import microbit as mb
3
import time
4
5
counter = 0
6
offset = 0
7
start = time.ticks_ms()
8
9
while True:
10
11
    if time.ticks_diff(time.ticks_ms(), start) >= 2000:
12
        start = time.ticks_ms()
13
        mb.display.scroll(counter+1)
14
        counter = counter + 1
15
        if counter == 16:
16
            counter = 0
17
        
18
    if counter == 0 or counter < 0:
19
        mb.pin1.write_digital(0)
20
        mb.pin8.write_digital(0)
21
        mb.pin12.write_digital(0)
22
        mb.pin16.write_digital(0)
23
24
    if counter == 1:
25
        mb.pin1.write_digital(1)
26
        mb.pin8.write_digital(0)
27
        mb.pin12.write_digital(0)
28
        mb.pin16.write_digital(0)
29
30
    if counter == 2:
31
        mb.pin1.write_digital(0)
32
        mb.pin8.write_digital(1)
33
        mb.pin12.write_digital(0)
34
        mb.pin16.write_digital(0)
35
36
    if counter == 3:
37
        mb.pin1.write_digital(1)
38
        mb.pin8.write_digital(1)
39
        mb.pin12.write_digital(0)
40
        mb.pin16.write_digital(0)
41
42
    if counter == 4:
43
        mb.pin1.write_digital(0)
44
        mb.pin8.write_digital(0)
45
        mb.pin12.write_digital(1)
46
        mb.pin16.write_digital(0)
47
48
    if counter == 5:
49
        mb.pin1.write_digital(1)
50
        mb.pin8.write_digital(0)
51
        mb.pin12.write_digital(1)
52
        mb.pin16.write_digital(0)
53
54
    if counter == 6:
55
        mb.pin1.write_digital(0)
56
        mb.pin8.write_digital(1)
57
        mb.pin12.write_digital(1)
58
        mb.pin16.write_digital(0)
59
60
    if counter == 7:
61
        mb.pin1.write_digital(1)
62
        mb.pin8.write_digital(1)
63
        mb.pin12.write_digital(1)
64
        mb.pin16.write_digital(0)
65
66
    if counter == 8:
67
        mb.pin1.write_digital(0)
68
        mb.pin8.write_digital(0)
69
        mb.pin12.write_digital(0)
70
        mb.pin16.write_digital(1)
71
72
    if counter == 9:
73
        mb.pin1.write_digital(1)
74
        mb.pin8.write_digital(0)
75
        mb.pin12.write_digital(0)
76
        mb.pin16.write_digital(1)
77
78
    if counter == 10:
79
        mb.pin1.write_digital(0)
80
        mb.pin8.write_digital(1)
81
        mb.pin12.write_digital(0)
82
        mb.pin16.write_digital(1)
83
84
    if counter == 11:
85
        mb.pin1.write_digital(1)
86
        mb.pin8.write_digital(1)
87
        mb.pin12.write_digital(0)
88
        mb.pin16.write_digital(1)
89
90
    if counter == 12:
91
        mb.pin1.write_digital(0)
92
        mb.pin8.write_digital(0)
93
        mb.pin12.write_digital(1)
94
        mb.pin16.write_digital(1)
95
96
    if counter == 13:
97
        mb.pin1.write_digital(1)
98
        mb.pin8.write_digital(0)
99
        mb.pin12.write_digital(1)
100
        mb.pin16.write_digital(1)
101
102
    if counter == 14:
103
        mb.pin1.write_digital(0)
104
        mb.pin8.write_digital(1)
105
        mb.pin12.write_digital(1)
106
        mb.pin16.write_digital(1)
107
108
    if counter == 15 or counter > 15:
109
        mb.pin1.write_digital(1)
110
        mb.pin8.write_digital(1)
111
        mb.pin12.write_digital(1)
112
        mb.pin16.write_digital(1)
113

(Binarno_brojanje_tajmer)

Oво је изворни код програма који је потребно уписати у микробит:

25
 
1
import  microbit as mb
2
import time
3
4
stanja = [(1,0,0,0),(0,1,0,0),(1,1,0,0),(0,0,1,0),(1,0,1,0),(0,1,1,0),(1,1,1,0),
5
          (0,0,0,1),(1,0,0,1),(1,1,0,1),(0,0,1,1),(1,0,1,1),(0,1,1,1),(1,1,1,1)]
6
counter = 0
7
offset = 0
8
start = time.ticks_ms()
9
10
while True:
11
12
    if time.ticks_diff(time.ticks_ms(), start) >= 2000:
13
         start = time.ticks_ms()
14
         mb.display.scroll(counter+1)
15
            
16
    if counter == 16:
17
        counter = 0
18
19
   
20
    p1,p8,p12,p16 = stanja[counter]
21
    mb.pin1.write_digital(p1)
22
    mb.pin8.write_digital(p8)
23
    mb.pin12.write_digital(p12)
24
    mb.pin16.write_digital(p16)
25

(Binarno_brojanje_tajmer2)

Назив задатка: Бинарно бројање помоћу тастера - опис и изворни код

Бинарно бројање представља пројекат код кога корисник узастопним притискањем тастера доводи до тога да се на светлећим диодама приказује текући бинарни број, а на дисплеју се показује исти тај број у декадном запису.

Eлектрична шема кола:

_images/sema1.png

Повежите компоненте као на следећој слици:

_images/projekat2a.png

Вежба је успешно урађена као добијемо следећи резултат:

_images/binarni_brojac.gif

Вежба је успешно урађена, ако добијемо ефекат као на следећем видеу. Кликните на видео да би се покренуо:

Oво је изворни код програма који је потребно уписати у микробит:

124
 
1
import microbit as mb
2
import time
3
4
counter = 0
5
offset = 0
6
start = time.ticks_ms()
7
8
while True:
9
10
    if time.ticks_diff(time.ticks_ms(), start) >= 5000:
11
        start = time.ticks_ms()
12
        mb.display.scroll(counter)
13
14
15
    if button_a.is_pressed():
16
17
        counter = counter + 1
18
19
        while mb.button_a.is_pressed():
20
            mb.sleep(10)
21
22
    if mb.button_b.is_pressed():
23
24
        counter = counter - 1
25
26
        while mb.button_b.is_pressed():
27
            mb.sleep(10)
28
29
    if counter == 0 or counter < 0:
30
        mb.pin1.write_digital(0)
31
        mb.pin8.write_digital(0)
32
        mb.pin12.write_digital(0)
33
        mb.pin16.write_digital(0)
34
35
    if counter == 1:
36
        mb.pin1.write_digital(1)
37
        mb.pin8.write_digital(0)
38
        mb.pin12.write_digital(0)
39
        mb.pin16.write_digital(0)
40
41
    if counter == 2:
42
        mb.pin1.write_digital(0)
43
        mb.pin8.write_digital(1)
44
        mb.pin12.write_digital(0)
45
        mb.pin16.write_digital(0)
46
47
    if counter == 3:
48
        mb.pin1.write_digital(1)
49
        mb.pin8.write_digital(1)
50
        mb.pin12.write_digital(0)
51
        mb.pin16.write_digital(0)
52
53
    if counter == 4:
54
        mb.pin1.write_digital(0)
55
        mb.pin8.write_digital(0)
56
        mb.pin12.write_digital(1)
57
        mb.pin16.write_digital(0)
58
59
    if counter == 5:
60
        mb.pin1.write_digital(1)
61
        mb.pin8.write_digital(0)
62
        mb.pin12.write_digital(1)
63
        mb.pin16.write_digital(0)
64
65
    if counter == 6:
66
        mb.pin1.write_digital(0)
67
        mb.pin8.write_digital(1)
68
        mb.pin12.write_digital(1)
69
        mb.pin16.write_digital(0)
70
71
    if counter == 7:
72
        mb.pin1.write_digital(1)
73
        mb.pin8.write_digital(1)
74
        mb.pin12.write_digital(1)
75
        mb.pin16.write_digital(0)
76
77
    if counter == 8:
78
        mb.pin1.write_digital(0)
79
        mb.pin8.write_digital(0)
80
        mb.pin12.write_digital(0)
81
        mb.pin16.write_digital(1)
82
83
    if counter == 9:
84
        mb.pin1.write_digital(1)
85
        mb.pin8.write_digital(0)
86
        mb.pin12.write_digital(0)
87
        mb.pin16.write_digital(1)
88
89
    if counter == 10:
90
        mb.pin1.write_digital(0)
91
        mb.pin8.write_digital(1)
92
        mb.pin12.write_digital(0)
93
        mb.pin16.write_digital(1)
94
95
    if counter == 11:
96
        mb.pin1.write_digital(1)
97
        mb.pin8.write_digital(1)
98
        mb.pin12.write_digital(0)
99
        mb.pin16.write_digital(1)
100
101
    if counter == 12:
102
        mb.pin1.write_digital(0)
103
        mb.pin8.write_digital(0)
104
        mb.pin12.write_digital(1)
105
        mb.pin16.write_digital(1)
106
107
    if counter == 13:
108
        mb.pin1.write_digital(1)
109
        mb.pin8.write_digital(0)
110
        mb.pin12.write_digital(1)
111
        mb.pin16.write_digital(1)
112
113
    if counter == 14:
114
        mb.pin1.write_digital(0)
115
        mb.pin8.write_digital(1)
116
        mb.pin12.write_digital(1)
117
        mb.pin16.write_digital(1)
118
119
    if counter == 15 or counter > 15:
120
        mb.pin1.write_digital(1)
121
        mb.pin8.write_digital(1)
122
        mb.pin12.write_digital(1)
123
        mb.pin16.write_digital(1)
124

(Binarno_brojanje_taster1)

Oво је изворни код програма који је потребно уписати у микробит:

35
 
1
import time
2
3
stanja = [(1,0,0,0),(0,1,0,0),(1,1,0,0),(0,0,1,0),(1,0,1,0),(0,1,1,0),(1,1,1,0),
4
          (0,0,0,1),(1,0,0,1),(1,1,0,1),(0,0,1,1),(1,0,1,1),(0,1,1,1),(1,1,1,1)]
5
counter = 0
6
offset = 0
7
start = time.ticks_ms()
8
9
while True:
10
11
    if time.ticks_diff(time.ticks_ms(), start) >= 5000:
12
        start = time.ticks_ms()
13
        mb.display.scroll(counter)
14
15
16
    if mb.button_a.is_pressed():
17
18
        counter = counter + 1
19
20
        while mb.button_a.is_pressed():
21
            mb.sleep(10)
22
23
    if mb.button_b.is_pressed():
24
25
        counter = counter - 1
26
27
        while mb.button_b.is_pressed():
28
            mb.sleep(10)
29
30
    p1,p8,p12,p16 = stanja[counter]
31
    mb.pin1.write_digital(p1)
32
    mb.pin8.write_digital(p8)
33
    mb.pin12.write_digital(p12)
34
    mb.pin16.write_digital(p16)
35

(Binarno_brojanje_taster2)