Եկեք քննարկենք GY-273 մոդուլի կապը Honeywell HMC5883L երեք առանցքային թվային կողմնացույցի հետ: Այս միկրոսխեման կարող է օգտագործվել նավագնացության մեջ մագնիսաչափական չափումների համար, եթե չափման բարձր ճշգրտություն չի պահանջվում (1 … 2 աստիճանի սխալով և տրամաչափման հնարավորությամբ): Սարքը միացված է I2C ինտերֆեյսի միջոցով:
Անհրաժեշտ է
- - թվային կողմնացույց HMC5883;
- - Arduino;
- - նախատիպային տախտակ և միացնող լարեր;
- - համակարգիչ:
Հրահանգներ
Քայլ 1
Սրանք մագնիսական կողմնացույցի հիմնական հատկություններն են.
- 3 առանցքային մագնիսականորեն զգայուն սենսոր;
- 12 բիթանոց ADC ՝ 2 մգ (միլիգաուս) բանաձևով;
- ներկառուցված ինքնաստուգում;
- ցածր աշխատանքային լարում և ցածր սպառում.
- թվային ինտերֆեյս I2C;
- հարցումների բարձր տեմպը `վայրկյանում մինչև 160 անգամ (մեկ չափման ժամանակը մոտ 6 մղոն է);
- ուղղությունը որոշելու ճշգրտությունը `1 °… 2 °;
- կարող է օգտագործվել ուժեղ մագնիսական դաշտերում (մինչև ± 8 Գաուս):
HMC5883L մագնիսական սենսորը Arduino- ին միացնելու դիագրամը ներկայացված է նկարում: Դա շատ կոմպակտ է և պարզ, քանի որ Երկու մետաղալար I2C ինտերֆեյսը հիանալի է, քանի որ այն մի քանի կապեր է պահանջում: Դուք կարող եք օգտագործել հացաթխման տախտակ:
Քայլ 2
Այն պետք է նման լինի լուսանկարի: Ես նաև միացնելու եմ տրամաբանական անալիզատորը SCL և SDA ավտոբուսներին `Arduino- ի և HMC5883 մոդուլի միջև տեղեկատվության փոխանակումը վերահսկելու համար: Դա պարտադիր չէ
Քայլ 3
Որպես առաջին ծանոթություն, եկեք փորձենք կարդալ նույնականացման մատյանները 10 (0xA), 11 (0xB) և 12 (0xC) թվային կողմնացույցի HMC5883 և գրել այնպիսի ուրվագիծ, ինչպիսին նկարում է: Այն տրամադրվում է մանրամասն մեկնաբանություններով:
Քայլ 4
Տրամաբանական վերլուծիչի միջոցով ստացված ազդանշանը կլինի այնպես, ինչպես ցույց է տրված նկարում:
Ինչ է դա նշանակում? Առաջին բայթը I2C հասցեն է, որով մենք (հիմնական սարքը, Arduino) կապ ենք հաստատում (բարձր 7 բիթ 0x1E), և գրելու ռեժիմը (ցածր բիթ - 0x0); թիվը 0x3C է: Երկրորդ բայթը 0xA թիվն է, որը մենք գրել ենք 0x1E- ին հասցեագրելու և HMC5883L սենսորից հաստատման բիթը, որը ստրուկ է: Սա գրանցման համարն է, որից մենք կսկսենք տվյալների ընթերցում: Դրանով ավարտվում է առաջին գործարքը: Սկսվում է հաջորդը: Երրորդ բայթը ստրուկի ընթերցման հարցումն է (ամենանշանակալից 7 բիթը 0x1E հասցեն է, 8-րդ բիթը ՝ 0x1 ընթերցման գործողությունը. Արդյունքում թիվը ՝ 0x3D): Վերջին 3 երեք բայթերը համապատասխանաբար 0xA, 0xB և 0xC գրանցումներից HMC5883L ստրուկի պատասխանն են:
HMC5883L թվային կողմնացույցը անընդհատ ընթերցման ժամանակ շարժվում է գրանցամատյաններում: Դրանք անհրաժեշտ չէ (բայց չի արգելվում) ամեն անգամ դեպքը հստակեցնել: Օրինակ, եթե 0xA- ի փոխարեն մենք գրեինք 0x3 և կարդայինք 10 անգամ, ապա 10 գրանցումներում արժեքներ կստանայինք ՝ սկսած 3-ից 12-րդ:
Եվ որո՞նք են այս երեք թվերը ՝ 0x48, 0x34, 0x33: Կրկին օգտագործելով HMC5883L թվային կողմնացույցի տվյալների թերթիկը, մենք կտեսնենք, որ դրանք երեք նույնականացման գրանցամատյանների լռելյայն արժեքներն են:
Քայլ 5
Մագնիսական դաշտի թվանշանի կողմնացույցի տվյալները ստանալու համար հարկավոր է կարդալ գրանցումները 3-ից 8-ը, ինչպես կարդում ենք նույնականացման մատյանները: Միակ տարբերությունն այն է, որ երեք, X, Y և Z առանցքներից յուրաքանչյուրի տվյալները ներկայացվում են որպես երկբայթ թվեր: Փոխակերպելով դրանք տասնորդական թվերի ՝ մենք ստանում ենք ուղղություններ երեք առանցքներից յուրաքանչյուրի երկայնքով: