- முடுக்கமானி மற்றும் கைரோஸ்கோபிக் சென்சார் என்றால் என்ன?
- MPU6050 முடுக்கமானி மற்றும் கைரோஸ்கோபிக் சென்சார் தொகுதி
- கூறுகள் தேவை
- சுற்று வரைபடம்
- நிரலாக்க விளக்கம்
MPU6050 ஒரு ஐசி உள்ளது 3-அச்சு முடுக்க மற்றும் இணைந்து 3-axis கிரையோஸ்கோப் ஒரே அலகாக. இது ஒரு சிக்கலான பணியைச் செய்ய வெப்பநிலை சென்சார் மற்றும் ஒரு டி.சி.எம். MPU6050 பொதுவாக ட்ரோன் மற்றும் பிற ரிமோட் ரோபோக்களை சுய சமநிலை ரோபோ போன்றவற்றை உருவாக்க பயன்படுகிறது. இந்த திட்டத்தில் MPU6050 மற்றும் Arduino ஐப் பயன்படுத்தி டிஜிட்டல் புரோட்டராக்டரை உருவாக்குவோம் . இங்கே ஒரு ப்ரொடெக்டர் படத்தில் கோணத்தைக் காட்ட ஒரு சர்வோ மோட்டார் பயன்படுத்தப்படுகிறது. சர்வோ மோட்டார் ஷாஃப்ட் ஒரு ஊசியுடன் இணைக்கப்பட்டுள்ளது, இது 16xLCD டிஸ்ப்ளேயில் காட்டப்படும் கோணத்தைக் குறிக்க ப்ரொடெக்டர் படத்தில் சுழலும். விவரங்களுக்குச் செல்வதற்கு முன் கைரோஸ்கோப் சென்சார் பற்றி அறிந்து கொள்வோம்.
முடுக்கமானி மற்றும் கைரோஸ்கோபிக் சென்சார் என்றால் என்ன?
முடுக்கம் அளவிட ஒரு முடுக்கமானி பயன்படுத்தப்படுகிறது. இது உண்மையில் நிலையான மற்றும் மாறும் முடுக்கம் இரண்டையும் உணர்கிறது. எடுத்துக்காட்டாக, மொபைல் நிலப்பரப்பு பயன்முறை அல்லது உருவப்படம் பயன்முறையில் இருப்பதை உணர மொபைல் போன்கள் முடுக்கமானி சென்சார் பயன்படுத்துகின்றன. இதுபோன்ற பல திட்டங்களை உருவாக்க நாங்கள் முன்பு ஆர்டுயினோவுடன் முடுக்க மானியைப் பயன்படுத்தினோம்:
இயக்கத்தில் உள்ள பொருளின் நோக்குநிலையைத் தீர்மானிக்க பூமியின் ஈர்ப்பு சக்தியைப் பயன்படுத்தும் கோண வேகத்தை அளவிட ஒரு கைரோஸ்கோப் பயன்படுத்தப்படுகிறது. கோண வேகம் என்பது சுழலும் உடலின் கோண நிலையை மாற்றும் வீதமாகும்.
எடுத்துக்காட்டாக, இன்றைய மொபைல்கள் மொபைல் ஃபோனின் நோக்குநிலைக்கு ஏற்ப மொபைல் கேம்களை விளையாட கைரோஸ்கோபிக் சென்சார்களைப் பயன்படுத்துகின்றன. மேலும், வி.ஆர் ஹெட்செட் 360 நோக்குநிலைகளில் பார்வைகளைக் கொண்டிருக்க கைரோஸ்கோப் சென்சார் பயன்படுத்துகிறது
ஆக்சிலரோமீட்டர் நேரியல் முடுக்கம் அளவிட முடியும் என்றாலும், கைரோஸ்கோப் சுழற்சி முடுக்கம் கண்டுபிடிக்க உதவும். இரண்டு சென்சார்களையும் தனித்தனி தொகுதிகளாகப் பயன்படுத்தும் போது நோக்குநிலை, நிலை மற்றும் வேகத்தைக் கண்டறிவது கடினம். ஆனால் இரண்டு சென்சார்களையும் இணைப்பதன் மூலம் இது ஒரு நிலைமாற்ற அளவீட்டு அலகு (IMU) ஆக செயல்படுகிறது. எனவே MPU6050 தொகுதியில், நோக்குநிலை, நிலை மற்றும் வேகத்தைக் கண்டறிய ஒற்றை பிசிபியில் முடுக்க அளவி மற்றும் கைரோஸ்கோப் உள்ளன.
பயன்பாடுகள்:
- திசைக் கட்டுப்பாட்டுக்கு ட்ரோன்களில் பயன்படுத்தப்படுகிறது
- சுய சமநிலை ரோபோக்கள்
- ரோபோ கை கட்டுப்பாடு
- டில்ட் சென்சார்
- மொபைல் போன்களில் பயன்படுத்தப்படுகிறது, வீடியோ கேம் கன்சோல்கள்
- மனித ரோபோக்கள்
- விமானம், தானியங்கி போன்றவற்றில் பயன்படுத்தப்படுகிறது.
MPU6050 முடுக்கமானி மற்றும் கைரோஸ்கோபிக் சென்சார் தொகுதி

MPU6050 என்பது ஒரு மைக்ரோ எலக்ட்ரோ-மெக்கானிக்கல் சிஸ்டம்ஸ் (MEMS) ஆகும், இது 3-அச்சு முடுக்க மானி மற்றும் 3-அச்சு கைரோஸ்கோப்பைக் கொண்டுள்ளது. இது வெப்பநிலை சென்சாரையும் கொண்டுள்ளது.
இது அளவிட முடியும்:
- முடுக்கம்
- வேகம்
- நோக்குநிலை
- இடப்பெயர்வு
- வெப்ப நிலை
இந்த தொகுதிக்குள் ஒரு (டி.எம்.பி) டிஜிட்டல் மோஷன் செயலியும் உள்ளது, இது சிக்கலான கணக்கீட்டைச் செய்ய போதுமான சக்தி வாய்ந்தது, இதனால் மைக்ரோகண்ட்ரோலருக்கான வேலையை விடுவிக்கிறது.
இந்த தொகுதியில் இரண்டு துணை ஊசிகளும் உள்ளன, அவை காந்தமாமீட்டர் போன்ற வெளிப்புற ஐ.ஐ.சி தொகுதிகளை இடைமுகப்படுத்த பயன்படுத்தலாம். தொகுதியின் ஐ.ஐ.சி முகவரி கட்டமைக்கக்கூடியது என்பதால், ஒன்றுக்கு மேற்பட்ட MPU6050 சென்சார் AD0 முள் பயன்படுத்தி மைக்ரோகண்ட்ரோலருடன் இணைக்கப்படலாம்.
அம்சங்கள் மற்றும் விவரக்குறிப்புகள்:
- மின்சாரம்: 3-5 வி
- தொடர்பு: I2C நெறிமுறை
- உள்ளமைக்கப்பட்ட 16-பிட் ஏடிசி அதிக துல்லியத்தை வழங்குகிறது
- உள்ளமைக்கப்பட்ட டி.எம்.பி உயர் கணக்கீட்டு சக்தியை வழங்குகிறது
- காந்தமாமீட்டர் போன்ற பிற ஐ.ஐ.சி சாதனங்களுடன் இடைமுகப்படுத்த பயன்படுத்தலாம்
- கட்டமைக்கக்கூடிய ஐ.ஐ.சி முகவரி
- உள்ளமைக்கப்பட்ட வெப்பநிலை சென்சார்
MPU6050 இன் பின்அவுட்:

| முள் எண் | முள் பெயர் | பயன்படுத்தவும் |
| 1 | வி.சி.சி. | தொகுதிக்கு சக்தியை வழங்குகிறது, + 3 வி முதல் + 5 வி வரை இருக்கலாம். பொதுவாக + 5 வி பயன்படுத்தப்படுகிறது |
| 2 | தரையில் | கிரவுண்ட் ஆஃப் சிஸ்டத்துடன் இணைக்கப்பட்டுள்ளது |
| 3 | சீரியல் கடிகாரம் (எஸ்சிஎல்) | I2C தொடர்புக்கு கடிகார துடிப்பு வழங்க பயன்படுகிறது |
| 4 | வரிசை தரவு (எஸ்.டி.ஏ) | I2C தொடர்பு மூலம் தரவை மாற்ற பயன்படுகிறது |
| 5 | துணை வரிசை தரவு (எக்ஸ்.டி.ஏ) | MPU6050 உடன் பிற I2C தொகுதிகளை இடைமுகப்படுத்த பயன்படுத்தலாம். இது விருப்பமானது |
| 6 | துணை சீரியல் கடிகாரம் (எக்ஸ்சிஎல்) | MPU6050 உடன் பிற I2C தொகுதிகளை இடைமுகப்படுத்த பயன்படுத்தலாம். இது விருப்பமானது |
| 7 | AD0 | ஒன்றுக்கு மேற்பட்ட MPU6050 ஐ ஒரு MCU பயன்படுத்தினால், முகவரியை மாற்ற இந்த முள் பயன்படுத்தப்படலாம் |
| 8 | குறுக்கீடு (INT) | MCU படிக்க தரவு கிடைக்கிறது என்பதைக் குறிக்க குறுக்கீடு முள். |
சுய சமநிலை ரோபோ மற்றும் இன்க்ளினோமீட்டரை உருவாக்க Arduino உடன் MPU6050 ஐ முன்னர் பயன்படுத்தினோம்.
கூறுகள் தேவை
- Arduino UNO
- MPU6050 கைரோஸ்கோப் தொகுதி
- 16x2 எல்சிடி டிஸ்ப்ளே
- பொட்டென்டோமீட்டர் 10 கே
- எஸ்ஜி 90-சர்வோ மோட்டார்
- புரோட்டராக்டர் படம்
சுற்று வரைபடம்
இந்த DIY Arduino Protractor க்கான சுற்று வரைபடம் கீழே கொடுக்கப்பட்டுள்ளது:

Arduino UNO மற்றும் MPU6050 க்கு இடையிலான சுற்று இணைப்புகள்:
|
MPU6050 |
Arduino UNO |
|
வி.சி.சி. |
+ 5 வி |
|
ஜி.என்.டி. |
ஜி.என்.டி. |
|
எஸ்.சி.எல் |
அ 5 |
|
எஸ்.டி.ஏ. |
அ 4 |
Arduino UNO மற்றும் Servo Motor க்கு இடையிலான சுற்று இணைப்புகள்:
|
சர்வோ மோட்டார் |
Arduino UNO |
|
RED (VCC) |
+ 5 வி |
|
ஆரஞ்சு (PWM) |
9 |
|
BROWN (GND) |
ஜி.என்.டி. |
Arduino UNO மற்றும் 16x2 LCD க்கு இடையிலான சுற்று இணைப்புகள்:
|
எல்.சி.டி. |
அர்டுடினோ நானோ |
|
வி.எஸ்.எஸ் |
ஜி.என்.டி. |
|
வி.டி.டி. |
+ 5 வி |
|
வி 0 |
பொட்டென்டோமீட்டர் சென்டர் பின் எல்சிடியின் மாறுபாட்டைக் கட்டுப்படுத்துவதற்கு |
|
ஆர்.எஸ் |
2 |
|
ஆர்.டபிள்யூ |
ஜி.என்.டி. |
|
இ |
3 |
|
டி 4 |
4 |
|
டி 5 |
5 |
|
டி 6 |
6 |
|
டி 7 |
7 |
|
அ |
+ 5 வி |
|
கே |
ஜி.என்.டி. |

நிரலாக்க விளக்கம்
வழக்கம் போல் இந்த டுடோரியலின் முடிவில் ஒரு ஆர்ப்பாட்ட வீடியோவுடன் முழுமையான நிரல் வழங்கப்படுகிறது.
இங்கே சர்வோ மோட்டார் அர்டுயினோவுடன் இணைக்கப்பட்டுள்ளது மற்றும் அதன் தண்டு சாய்ந்த MPU6050 இன் கோணத்தைக் குறிக்கும் புரோட்டாக்டர் படத்தில் திட்டமிடப்பட்டுள்ளது. இந்த டுடோரியலுக்கான புரோகிராமிங் எளிதானது. அதை விரிவாகப் பார்ப்போம்.
முதலில் தேவையான அனைத்து நூலகங்களையும் சேர்க்கவும் - சர்வோவைப் பயன்படுத்துவதற்கான சர்வோ மோட்டார் நூலகம், எல்சிடி பயன்படுத்த எல்சிடி நூலகம் மற்றும் ஐ 2 சி தகவல்தொடர்புகளைப் பயன்படுத்த வயர் நூலகம்.
MPU6050 I2C தகவல்தொடர்புகளைப் பயன்படுத்துகிறது, எனவே, இது Arduino இன் I2C பின்ஸுடன் மட்டுமே இணைக்கப்பட வேண்டும். எனவே, Arduino UNO மற்றும் MPU6050 க்கு இடையில் தகவல்தொடர்புகளை நிறுவ Wire.h நூலகம் பயன்படுத்தப்படுகிறது. நாங்கள் முன்பு MPU6050 ஐ Arduino உடன் இணைத்து x, y, z ஒருங்கிணைப்பு மதிப்புகளை 16x2 LCD இல் காண்பித்தோம்.
#சேர்க்கிறது
அடுத்து எல்சிடி டிஸ்ப்ளே ஊசிகளை வரையறுக்கவும் ஆர்எஸ், ஈ, டி 4, டி 5, டி 6, டி 7 ஆகியவை ஆர்டுயினோ யுஎன்ஓவுடன் இணைக்கப்பட்டுள்ளன.
லிக்விட் கிரிஸ்டல் எல்சிடி (2,3,4,5,6,7);
அடுத்து MPU6050 இன் I2C முகவரி வரையறுக்கப்படுகிறது.
const int MPU_addr = 0x68;
பின்னர் துவக்க myservo எக்ஸ், ஒய் மற்றும் இசட் மதிப்புகள் அச்சு சேமிக்க பணி வர்க்கம் மற்றும் மூன்று மாறிகள் பயன்படுத்தி பொருள்.
சர்வோ மைசர்வோ; int16_t அச்சு_எக்ஸ், அச்சு_ஒய், அச்சு_இசட்;
0 முதல் 360 வரை கோணத்தை அளவிட அடுத்த குறைந்தபட்ச மற்றும் அதிகபட்ச மதிப்பு 265 மற்றும் 402 ஆக அமைக்கப்பட்டுள்ளது.
int minVal = 265; int maxVal = 402;
வெற்றிட அமைப்பு ():
இல் வெற்றிடத்தை அமைப்பு செயல்பாடு முதல் I2C தொடர்பு தொடங்கி ஒலிபரப்பு 0x68 முகவரி MPU6050 கொண்டு தொடங்கியுள்ளது.
வயர்.பெஜின் (); Wire.beginTransmission (MPU_addr);
0x6B எழுதுவதன் மூலம் MPU6050 ஐ ஸ்லீப் பயன்முறையில் வைக்கவும், பின்னர் 0 எழுதுவதன் மூலம் அதை எழுப்புங்கள்
வயர்.ரைட் (0x6 பி); வயர்.ரைட் (0);
MPU6050 செயலில் செய்த பிறகு, பரிமாற்றத்தை முடிக்கவும்
Wire.endTransmission (உண்மை);
இங்கே சர்வோ மோட்டரின் PWM முள் Arduino UNO pin 9 உடன் இணைக்கப்பட்டுள்ளது.
myservo.attach (9);
நாங்கள் சுற்றுக்கு சக்தி அளித்தவுடன் எல்சிடி ஒரு வரவேற்பு செய்தியைக் காண்பிக்கும் மற்றும் 3 விநாடிகளுக்குப் பிறகு அதை அழிக்கவும்
lcd.begin (16,2); // எல்சிடியை 16 எக்ஸ் 2 பயன்முறையில் அமைக்கிறது lcd.print ("CIRCUIT DIGEST"); தாமதம் (1000); lcd.clear (); lcd.setCursor (0,0); lcd.print ("Arduino"); lcd.setCursor (0,1); lcd.print ("MPU6050"); தாமதம் (3000); lcd.clear ();
வெற்றிட சுழற்சி ():
மீண்டும், I2C தொடர்பு MPU6050 உடன் தொடங்கப்பட்டுள்ளது.
Wire.beginTransmission (MPU_addr);
பதிவு 0x3B (ACCEL_XOUT_H) உடன் தொடங்கவும்
வயர்.ரைட் (0x3B);
இப்போது செயல்முறை செட் எண்ட் டிரான்ஸ்மிஷன் மூலம் தவறானது என மறுதொடக்கம் செய்யப்படுகிறது, ஆனால் இணைப்பு செயலில் உள்ளது.
வயர்.இன்ட் டிரான்ஸ்மிஷன் (பொய்);
அதன் பிறகு இப்போது 14 பதிவேடுகளிலிருந்து தரவைக் கோருங்கள்.
Wire.requestFrom (MPU_addr, 14, உண்மை);
இப்போது மரியாதைக்குரிய அச்சு பதிவு மதிப்புகள் (x, y, z) பெறப்படுகின்றன மற்றும் அச்சுகள்_எக்ஸ், அச்சு_ஒய், அச்சு_இசட்.
axis_X = Wire.read () << 8- Wire.read (); axis_Y = வயர்.ரெட் () << 8- வயர்.ரெட் (); axis_Z = வயர்.ரெட் () << 8- வயர்.ரெட் ();
பின்னர் அந்த மதிப்புகளை 265 முதல் 402 வரை -90 முதல் 90 வரை வரைபடப்படுத்தவும். இது மூன்று அச்சுகளுக்கும் செய்யப்படுகிறது.
int xAng = வரைபடம் (அச்சு_எக்ஸ், மினிவால், மேக்ஸ்வால், -90,90); int yAng = வரைபடம் (அச்சு_ஒய், மினிவால், மேக்ஸ்வால், -90,90); int zAng = வரைபடம் (அச்சு_இசட், மினிவால், மேக்ஸ்வால், -90,90);
X மதிப்பை டிகிரியில் (0 முதல் 360 வரை) கணக்கிடுவதற்கான ஃபார்முலா கீழே கொடுக்கப்பட்டுள்ளது. சர்வோ மோட்டார் சுழற்சி x மதிப்பு இயக்கத்தை அடிப்படையாகக் கொண்டிருப்பதால் இங்கே நாம் x ஐ மட்டுமே மாற்றுகிறோம்.
x = RAD_TO_DEG * (atan2 (-yAng, -zAng) + PI);
எக்ஸ் கோண மதிப்பு, 0 முதல் 360 டிகிரி வரை, 0 முதல் 180 ஆக மாற்றப்படுகிறது.
int pos = வரைபடம் (x, 0,180,0,180);
ப்ரொடெக்டர் படத்தில் சேவையை சுழற்ற கோண மதிப்பை எழுதி 16x2 எல்சிடி டிஸ்ப்ளேயில் அந்த மதிப்புகளை அச்சிடுக.
myservo.write (pos); lcd.setCursor (0,0); lcd.print ("கோணம்"); lcd.setCursor (0,1); lcd.print (x); தாமதம் (500); lcd.clear ();

எனவே கோணத்தை அளவிட Arduino உடன் MPU6050 ஐப் பயன்படுத்தலாம். இந்த திட்டத்திற்கான முழுமையான குறியீடு மற்றும் வீடியோ கீழே கொடுக்கப்பட்டுள்ளது.
