ዝርዝር ሁኔታ:

Arduino Sinewave ለ Inverters: 4 ደረጃዎች
Arduino Sinewave ለ Inverters: 4 ደረጃዎች

ቪዲዮ: Arduino Sinewave ለ Inverters: 4 ደረጃዎች

ቪዲዮ: Arduino Sinewave ለ Inverters: 4 ደረጃዎች
ቪዲዮ: Inverter Refrigerator Compressor Direct Start & UVW Testing | Embraco Fridge Board 2024, ሀምሌ
Anonim
Arduino Sinewave ለ Inverters
Arduino Sinewave ለ Inverters

በዚህ ፕሮጀክት ውስጥ ከሁለት አርዱዲኖ ፒኤም ዲጂታል ውጤቶች የ SPWM (ሳይን ሞገድ ምት ሰፊ የተቀየረ) ምልክት አምጥቻለሁ።

ምክንያቱም እንዲህ ዓይነቱን ፕሮግራም ለማዘጋጀት ስለ ብዙ ሌሎች ተግባራት እና ስለ አርዱዲኖ ባህሪዎች ማውራት አለብኝ oscilloscope ምስሎችን እና ለተለያዩ ድግግሞሾች እባክዎን ድር ጣቢያዬን ይጎብኙ-

eprojectszone

ደረጃ 1 የ Pwm ምልክትን ለ 50Hz ማምረት

በከፍተኛ ድግግሞሽ የ 50Hz ምልክት ለማመንጨት አንዳንድ ስሌቶችን ማድረግ አስፈላጊ ነው። ከ arduino ድግግሞሽ በ 8 ሜኸር ሊሆን ይችላል ፣ ግን እኛ ተለዋዋጭ የግዴታ ዑደት ያለው ምልክት እንፈልጋለን።

የአርዱዲኖን ተለዋዋጭ የግዴታ ዑደቶች ዓይነቶች ለመረዳት ይህንን ተመሳሳይ ልጥፍ 1 ፣ 2 እና 3 ን 3 ክፍሎች ማንበብ ይችላሉ።

የእኛ ድግግሞሽ 50Hz ነው እንበል ፣ ይህ ማለት ጊዜው 20ms ነው ማለት ነው። ስለዚህ 10ms ግማሽ ዑደት ጊዜ ነው። በእነዚያ 10ms ውስጥ በአነስተኛ የግዴታ ዑደቶች የሚጀምሩ ከተለያዩ የግዴታ ዑደቶች ጋር ብዙ ጥራጥሬዎች ሊኖሩን ይገባል ፣ በምልክቱ መሃል ከፍተኛ የግዴታ ዑደቶች አሉን እንዲሁም በአነስተኛ የግዴታ ዑደቶች እንጨርሳለን። ሳይን ሞገድ ለማመንጨት ሁለት ፒኖችን አንድ እንጠቀማለን። አዎንታዊ ግማሽ ዑደት እና አንድ ለአሉታዊ ግማሽ ዑደት። በዚህ ልጥፋችን ውስጥ ፒን 5 እና 6 ን እንጠቀማለን ማለት ሰዓት ቆጣሪ 0 ማለት ነው።

ለስላሳ ምልክት እኛ ደረጃን ትክክለኛ ፒኤምኤን በ 31372 Hz ይመልከቱ-ቀዳሚውን ልጥፍ ይመልከቱ-አንዱ ትልቁ ችግር ለእያንዳንዱ ምት አስፈላጊውን የግዴታ ዑደት እንዴት እንደምናሰላ ነው። ስለዚህ ፣ የእኛ ድግግሞሽ f = 31372Hz ስለሆነ ለእያንዳንዱ የልብ ምት ጊዜ T = 1/31372 = 31.8 እኛን ነው ፣ ስለዚህ ለግማሽ ዑደት የጥራጥሬዎች ብዛት N = 10ms/31.8us = 314 pulses ነው። አሁን ለእያንዳንዱ ምት የግዴታ ዑደትን ለማስላት y = sinx አለን ፣ ግን በዚህ ቀመር ውስጥ ዲግሪዎች ያስፈልጉናል ስለዚህ ግማሽ ዑደት ለ 314 ጥራጥሬዎች 180 ዲግ አለው። ለእያንዳንዱ ምት 180/314 = 0.57 ዲግ/ምት አለን። ያ ማለት ለእያንዳንዱ የልብ ምት በ 0.57 ዲግ ወደፊት እንጓዛለን።

y የግዴታ ዑደት እና x በግማሽ የግዴታ ዑደት ውስጥ የአቀማመጥ ዋጋ ነው። በመጀመሪያ x 0 ነው ፣ ከዚያ x = 0.57 ፣ x = 1.14 እና እስከ x = 180 ድረስ።

ሁሉንም 314 እሴቶችን ብናሰላ ድርድር 314 አባሎችን እናገኛለን (በአርዱዲኖ በቀላሉ ለማስላት “int” ይተይቡ)።

እንዲህ ዓይነቱ ድርድር እንደሚከተለው ነው

int sinPWM = {1, 2, 5, 7, 10, 12, 15, 17, 19, 22, 24, 27, 30, 32, 34, 37, 39, 42, 44, 47, 49, 52 ፣ 54 ፣ 57 ፣ 59 ፣ 61 ፣ 64 ፣ 66 ፣ 69 ፣ 71 ፣ 73 ፣ 76 ፣ 78 ፣ 80 ፣ 83 ፣ 85 ፣ 88 ፣ 90 ፣ 92 ፣ 94 ፣ 97 ፣ 99 ፣ 101 ፣ 103 ፣ 106 ፣ 108 ፣ 110 ፣ 113, 115, 117 ፣ 119 ፣ 121 ፣ 124 ፣ 126 ፣ 128 ፣ 130 ፣ 132 ፣ 134 ፣ 136 ፣ 138 ፣ 140 ፣ 142 ፣ 144 ፣ 146 ፣ 148 ፣ 150 ፣ 152 ፣ 154 ፣ 156 ፣ 158 ፣ 160 ፣ 162 ፣ እ.ኤ.አ. 205 ፣ 207 ፣ 208 ፣ 209 ፣ 211 ፣ 212 ፣ 213 ፣ 215 ፣ 216 ፣ 217 ፣ 219 ፣ 220 ፣ 221 ፣ 222 ፣ 223 ፣ 224 ፣ 225 ፣ 226 ፣ 227 ፣ 228 ፣ 229 ፣ 230 ፣ 231 ፣ 232 ፣ 233 ፣ 234 ፣ 235 ፣ 236 ፣ 237 ፣ 237 ፣ 238 ፣ 239 ፣ 240 ፣ 240 ፣ 241 ፣ 242 ፣ 242 ፣ 243 ፣ 243 ፣ 244 ፣ 244 ፣ 245 ፣ 245 ፣ 246 ፣ 246 ፣ 247 ፣ 247 ፣ 247 ፣ 248 ፣ 248 248 ፣ 248 ፣ 249 ፣ 249 ፣ 249 ፣ 249 ፣ 249 ፣ 250 ፣ 250 ፣ 250 ፣ 250 ፣ 249 ፣ 249 ፣ 249 ፣ 249 ፣ 249 ፣ 248 ፣ 248 ፣ 248 ፣ 248 ፣ 247 ፣ 247 ፣ 247 ፣ 246 ፣ 246 ፣ 245, 245 ፣ 244 ፣ 244 ፣ 243 ፣ 243 ፣ 242 ፣ 242 ፣ 241 ፣ 240 ፣ 240 ፣ 239 ፣ 238 ፣ 237 ፣ 237 ፣ 236 ፣ 235 ፣ 234 ፣ 233 ፣ 232 ፣ 231 ፣ 230 ፣ 229 ፣ 228 ፣ 227 ፣ 226 ፣ 225 ፣ 224 ፣ 223 ፣ 222 ፣ 221 ፣ 220 ፣ 219 ፣ 217 ፣ 21 6 ፣ 215 ፣ 213 ፣ 212 ፣ 211 ፣ 209 ፣ 208 ፣ 207 ፣ 205 ፣ 204 ፣ 202 ፣ 201 ፣ 199 ፣ 198 ፣ 196 ፣ 195 ፣ 193 ፣ 192 ፣ 190 ፣ 188 ፣ 187 ፣ 185 ፣ 184 ፣ 182 ፣ 180 ፣ እ.ኤ.አ. 130 ፣ 128 ፣ 126 ፣ 124 ፣ 121 ፣ 119 ፣ 117 ፣ 115 ፣ 113 ፣ 110 ፣ 108 ፣ 106 ፣ 103 ፣ 101 ፣ 99 ፣ 97 ፣ 94 ፣ 92 ፣ 90 ፣ 88 ፣ 85 ፣ 83 ፣ tam ፣ 78 ፣ 76 ፣ 73 ፣ 71 ፣ 69 ፣ 66 ፣ 64 ፣ 61 ፣ 59 ፣ 57 ፣ 54 ፣ 52 ፣ 49 ፣ 47 ፣ 44 ፣ 42 ፣ 39 ፣ 37 ፣ 34 ፣ 32 ፣ 30 ፣ 27 ፣ 24 ፣ 22 ፣ 19 ፣ 17 ፣ 15 ፣ 12, 10, 7, 5, 2, 1};

ልክ እንደ ሳይን ሞገድ የግዴታ ዑደት በመጀመሪያ እና በመጨረሻው ኤለመንት እና በመሃል ላይ ከፍተኛ መሆኑን ማየት ይችላሉ።

ደረጃ 2: Arduino ፕሮግራም ለተለዋዋጭ የግዴታ ዑደት

ለተለዋዋጭ የግዴታ ዑደት አርዱዲኖ ፕሮግራም
ለተለዋዋጭ የግዴታ ዑደት አርዱዲኖ ፕሮግራም

ከላይ ባለው ምስል ውስጥ ከተደራራቢ እሴቶች ጋር ተለዋዋጭ የግዴታ ዑደቶች ምልክቶች አሉን።

ግን እንደዚህ ዓይነቱን ምልክት እንዴት ማድረግ እንደሚቻል ??

ከዚህ በታች ያለው የፕሮግራሙ ክፍል የተግባር ዑደቶችን እሴቶች ለመለወጥ ያቋርጣል

sei (); // ማቋረጫዎችን ያንቁ

}

ISR (TIMER1_COMPA_vect) {// ሰዓት ቆጣሪ 1 ከ OCR1A እሴት ጋር ሲዛመድ ያቋርጣል

ከሆነ (i> 313 && እሺ == 0) {// የመጨረሻ እሴት ከቬክተር ለፒን 6

i = 0; // ወደ የቬክተር የመጀመሪያ እሴት ይሂዱ (ድርድር)

እሺ = 1; // ፒን 5 ን ያንቁ

}

x = sinPWM ; // x ዋጋውን ከቬክተር ወደ ቦታው i (እኔ ዜሮ መረጃ ጠቋሚ ነኝ)-የተግባር ዑደት ዋጋ

i = i+1; // ወደ ቀጣዩ ቦታ ይሂዱ

}

ደረጃ 3: በ 50Hz Arduino Pins ላይ መለዋወጥ

በ 50Hz Arduino Pins ላይ ተለዋጭ
በ 50Hz Arduino Pins ላይ ተለዋጭ

Beacause እያንዳንዱ ፒን ሙሉ የኃይለኛ ማዕበልን ለመሥራት ከግማሽ የዑደት ዑደት ብቻ ያመነጫል እኛ በትክክል ከ 10 ሰከንዶች በኋላ (ለ 50 Hz) እርስ በእርስ የሚለዋወጡ ሁለት ፒኖችን እንጠቀማለን። ይህ የፒንሶች ለውጥ በድርድሩ መጨረሻ ላይ ነው- እንበል ፒን 5 314 ጥራጥሬዎችን አፍርቷል እንበል ይህ ፒን ተጎድቶ እና ነቅቷል ፒን 6 ይህም ተመሳሳይ ነገር ግን ለአሉታዊ የግዴታ ዑደት ነው።

አርዱዲኖ አዎንታዊ ምልክቶችን ብቻ ሊያመነጭ ስለሚችል አሉታዊ የግዴታ ዑደት በ h ድልድይ ውስጥ የተሠራ ነው- ስለእሱ እዚህ ማንበብ ይችላሉ

ፒኖችን ለመቀየር ፕሮግራሙ;

sei (); // ማቋረጫዎችን ያንቁ

}

ISR (TIMER1_COMPA_vect) {// ሰዓት ቆጣሪ 1 ከ OCR1A እሴት ጋር ሲዛመድ ያቋርጣል

ከሆነ (i> 313 && እሺ == 0) {// የመጨረሻ እሴት ከቬክተር ለፒን 6

i = 0; // ወደ vector የመጀመሪያ እሴት ይሂዱ

እሺ = 1; // ፒን 5 ን ያንቁ

}

ከሆነ (i> 313 && እሺ == 1) {// የመጨረሻ እሴት ከቬክተር ለፒን 5

i = 0; // ወደ vector የመጀመሪያ እሴት ይሂዱ

እሺ = 0; // ፒን 6 ን ያንቁ

}

x = sinPWM ; // x ዋጋውን ከ vector አቀማመጥ I ጋር ይዛመዳል (i ዜሮ ጠቋሚ ነው)

i = i+1; // ወደ ቀጣዩ ቦታ ይሂዱ

ከሆነ (እሺ == 0) {

OCR0B = 0; // ፒን 5 0 ያድርጉ

OCR0A = x; // ፒን 6 ን ወደ ተጓዳኝ የግዴታ ዑደት ያንቁ

ከሆነ (እሺ == 1) {

OCR0A = 0; // ፒን 6 0 ያድርጉ

OCR0B = x; // ፒን 5 ን ወደ ተጓዳኝ የግዴታ ዑደት ያንቁ

}

}

ደረጃ 4 የኤች ድልድይ መንዳት እና የፒኤምኤም ምልክት ማጣራት

ከአርዱዲኖ የሚያገኙት ምልክቶች ለ inverter አፕሊኬሽኖች የመቆጣጠሪያ ክፍል ናቸው ምክንያቱም ሁለቱም አዎንታዊ ናቸው። ሙሉ ሳይን ሞገድ እና ተግባራዊ ኢንቬተር ለማድረግ የ h ድልድይ መጠቀም እና ፒኤምኤን ዝቅተኛ የማለፊያ ማጣሪያን ማጽዳት አለብን።

ኤች-ድልድይ እዚህ ቀርቧል።

በአነስተኛ የኤሲ ሞተሮች የተፈተነው ዝቅተኛ-ማለፊያ ማጣሪያ-እዚህ።

የሚመከር: