Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
cs:sw:01-mervis:advanced-modes-of-digital-outputs-hidden [2020/06/09 12:18]
avsetula
cs:sw:01-mervis:advanced-modes-of-digital-outputs-hidden [2021/08/05 11:58]
avsetula [Pokročilá funkce digitálních výstupů: PWM]
Line 6: Line 6:
 <WRAP half column 15%> <WRAP half column 15%>
 ;;# ;;#
-<​html><​span class="​dev-tag dev-axon">Axon</​span></​html>​ \\ +<​html><​span class="​dev-tag dev-patron">Patron</​span></​html>​ \\ 
-<​html><​span class="​dev-tag dev-neuron">​Neuron</​span></​html>​+<​html><​span class="​dev-tag dev-neuron">​Neuron</​span></​html>​ \\ 
 +<​html><​span class="​dev-tag dev-axon">​Axon</​span></​html>​
 ;;# ;;#
 </​WRAP>​ </​WRAP>​
 </​WRAP>​ </​WRAP>​
  
-Jako příklad použijeme ​24V DC elektromotor. Aby motor dosáhl plných otáček, vyžaduje napětí 24 V. Pro 10 % otáček mu bude logicky postačovat pouze 2,4V napětí. Při takto nízkém napětí by se ale motor nerozběhl kvůli vlivu tření a zátěže. Pokud by se pak přeci jen rozběhl, měl by jen velmi nízký točivý moment. Jde o jednu ze slabin analogové regulace. ​+Jako příklad použijeme ​24 V⎓ elektromotor. Aby motor dosáhl plných otáček, vyžaduje napětí 24 V. Pro 10 % otáček mu bude logicky postačovat pouze 2,4 V⎓ napětí. Při takto nízkém napětí by se ale motor nerozběhl kvůli vlivu tření a zátěže. Pokud by se pak přeci jen rozběhl, měl by jen velmi nízký točivý moment. Jde o jednu ze slabin analogové regulace. ​
  
-PWM lze použít **pouze na digitálních výstupech**,​ které mohou generovat pouze 0V nebo 24V napětí. Pro možnost regulace proto PWM generuje dvouhodnotový obdélníkový signál o dané frekvenci, čehož dosahuje periodickým přepínáním výstupu mezi ''​ON''​ a ''​OFF''​. Parametrem regulace je **střída signálu**, tj. délka ''​ON''​ a ''​OFF''​ signálů v rámci jedné periody. Pokud je střída signálu reprezentována procenty a její hodnota je 50%, výstupní signál stráví 50% časového úseku ve stavu ''​ON''​ a zbytek ve stavu ''​OFF''​. Při střídě 66% bude poměr 66% ''​ON''​ a 34% ''​OFF''​ apod. +PWM lze použít **pouze na digitálních výstupech**,​ které mohou generovat pouze 0 V⎓ nebo 24 V⎓ napětí. Pro možnost regulace proto PWM generuje dvouhodnotový obdélníkový signál o dané frekvenci, čehož dosahuje periodickým přepínáním výstupu mezi ''​ON''​ a ''​OFF''​. Parametrem regulace je **střída signálu**, tj. délka ''​ON''​ a ''​OFF''​ signálů v rámci jedné periody. Pokud je střída signálu reprezentována procenty a její hodnota je 50 %, výstupní signál stráví 50 % časového úseku ve stavu ''​ON''​ a zbytek ve stavu ''​OFF''​. Při střídě 66% bude poměr 66 % ''​ON''​ a 34 % ''​OFF''​ apod. 
  
 ===== Výběr frekvence ===== ===== Výběr frekvence =====
Line 25: Line 26:
 ===== Rozlišení PWM ===== ===== Rozlišení PWM =====
  
-Druhým parametrem PWM je **rozlišení**. Tato hodnota indikuje, **na kolik kroků** chceme regulaci rozdělit. Pokud je rozlišení 3, můžeme nastavit tři hodnoty střídy - 0%, 50% a 100%. U rozlišení 11 pak můžeme střídu v rozsahu 0-100% nastavovat po 10% krocích. ​+Druhým parametrem PWM je **rozlišení**. Tato hodnota indikuje, **na kolik kroků** chceme regulaci rozdělit. Pokud je rozlišení 3, můžeme nastavit tři hodnoty střídy - 0 %, 50 % a 100 %. U rozlišení 11 pak můžeme střídu v rozsahu 0-100 % nastavovat po 10 % krocích. ​
  
 Maximální možné rozlišení u kontrolérů Unipi činí 65536 kroků. ​ Maximální možné rozlišení u kontrolérů Unipi činí 65536 kroků. ​
Line 41: Line 42:
 === Příklad 1 === === Příklad 1 ===
  
-  rozlišení = 101 kroků (0 - 100% po 1% krocích)+  rozlišení = 101 kroků (0-100% po 1% krocích)
   ​   ​
   střída [%] = 34   střída [%] = 34
Line 49: Line 50:
                            ​100 ​                                ​100 ​                            ​100 ​                                ​100 ​
  
-Pro rozlišení 101 kroků a žádanou střídu 34% je třeba v Mervisu nastavit střídu na hodnotu **34**. To bylo poměrně jednoduché,​ nyní proto zkusíme něco složitějšího. ​+Pro rozlišení 101 kroků a žádanou střídu 34 % je třeba v Mervisu nastavit střídu na hodnotu **34**. To bylo poměrně jednoduché,​ nyní proto zkusíme něco složitějšího. ​
  
 === Příklad 2 === === Příklad 2 ===
  
-  rozliseni = 6 steps (0 - 100% po 20% krocích)+  rozliseni = 6 steps (0-100 % po 20 % krocích)
   ​   ​
-  strida [%] = 40%+  strida [%] = 40 %
   ​   ​
                        ​rozliseni - 1                       6 - 1                        ​rozliseni - 1                       6 - 1
Line 61: Line 62:
                             100                             ​100 ​                             100                             ​100 ​
  
-Pro rozlišení 6 kroků a žádanou střídu 40% je třeba v Mervisu nastavit hodnotu střídy na **2**.+Pro rozlišení 6 kroků a žádanou střídu 40 % je třeba v Mervisu nastavit hodnotu střídy na **2**.
  
 ===== Výpočet konfiguračních parametrů Mervisu ===== ===== Výpočet konfiguračních parametrů Mervisu =====
Line 87: Line 88:
 === Příklad 1 === === Příklad 1 ===
  
-  Rozlišení = 11 (střída signálu 0 - 100% s 10% kroky)+  Rozlišení = 11 (střída signálu 0-100 % s 10 % kroky)
   ​   ​
-  Frekvence = 4kHz+  Frekvence = 4 kHz
   ​   ​
   PWM_Cycle = rozlišení - 2 = 11 - 2 = 9   PWM_Cycle = rozlišení - 2 = 11 - 2 = 9
Line 101: Line 102:
   Rozlišení = 41 (krok 2,5%)   Rozlišení = 41 (krok 2,5%)
   ​   ​
-  Frekvence = 0.1Hz+  Frekvence = 0.1 Hz
   ​   ​
   PWM_Cycle = rozlišení - 2 = 41 - 2 = 39   PWM_Cycle = rozlišení - 2 = 41 - 2 = 39
Line 115: Line 116:
 === Příklad 3 === === Příklad 3 ===
  
-  Rozlišení = 10001 (krok 0,01%)+  Rozlišení = 10001 (krok 0,01 %)
   ​   ​
-  Frekvence = 0.1Hz+  Frekvence = 0.1 Hz
   ​   ​
   PWM_Cycle = rozlišení - 2 = 10001 - 2 = 9999   PWM_Cycle = rozlišení - 2 = 10001 - 2 = 9999
Line 138: Line 139:
 {{ :​en:​sw:​01-mervis:​pwm-06-searching-for-ports.png?​direct |}} {{ :​en:​sw:​01-mervis:​pwm-06-searching-for-ports.png?​direct |}}
  
-Nyní zapněte **Mód ladění** a ve sloupci **Hodnota PLC** uvidíte současnou hodnotu PWM pro digitální výstupy 1.01 - 1.04. Pokud jste ji již dříve nezměnili, uvidíte zde nuly. Změňte hodnotu **PWM_1.01** na 50 a potvrďte kliknutím na {{:​files:​dialog-confirm_button_2.png?​nolink|}} či stisknutím klávesy **ENTER**. ​+Nyní zapněte **Mód ladění** a ve sloupci **Hodnota PLC** uvidíte současnou hodnotu PWM pro digitální výstupy 1.01-1.04. Pokud jste ji již dříve nezměnili, uvidíte zde nuly. Změňte hodnotu **PWM_1.01** na 50 a potvrďte kliknutím na {{:​files:​dialog-confirm_button_2.png?​nolink|}} či stisknutím klávesy **ENTER**. ​
  
 Pro ověření můžeme k DO 1.01 připojit osciloskop a zkontrolovat podobu signálu. ​ Pro ověření můžeme k DO 1.01 připojit osciloskop a zkontrolovat podobu signálu. ​
Line 144: Line 145:
 {{ :​en:​sw:​01-mervis:​pic_425_2.gif?​direct |}} {{ :​en:​sw:​01-mervis:​pic_425_2.gif?​direct |}}
  
-Jak ukazuje osciloskop, frekvence je 4 kHz při střídě signálu 50%. +Jak ukazuje osciloskop, frekvence je 4 kHz při střídě signálu 50 %. 
  
 ===== K čemu je magická konstanta 4,8 * 10^7 ===== ===== K čemu je magická konstanta 4,8 * 10^7 =====
 Při výpočtech hodnoty **PWM_Prescale** využíváme konstantu ​ Při výpočtech hodnoty **PWM_Prescale** využíváme konstantu ​
-In calculations of the **PWM_Prescale**,​ we use constant 4,8 * 10^7. Konstanta představuje ​48MHz zdroj pro interní časovače/​čítače,​ které se společně s PWM_Prescale a PWM_Count starají o nastavení požadované frekvence. ​+In calculations of the **PWM_Prescale**,​ we use constant 4,8 * 10^7. Konstanta představuje ​48 MHz zdroj pro interní časovače/​čítače,​ které se společně s PWM_Prescale a PWM_Count starají o nastavení požadované frekvence. ​