Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
TLV493D sensoru olan robotunuz üçün alternativ bir nəzarətçi, 3 dərəcəlik sərbəstliyə (x, y, z) malik maqnit sensoru, bunlarla mikro nəzarətçilərinizdə və Bast Pro Mini M0 -un elektron lövhənizdə I2C əlaqəsi ilə yeni layihələrinizi idarə edə bilərsiniz. Arduino IDE -də SAMD21 mikro nəzarətçi.
Məqsəd, layihələrinizi idarə etmək üçün alternativ bir joystickə sahib olmaqdır, bu halda 3 dərəcə sərbəstliyə malik bir robot qolu. MeArm Robot Arm istifadə etdim, bu açıq mənbəli bir layihədir və bunu asanlaşdıra bilərsiniz və burada tapa bilərsiniz. Sizinlə bölüşməkdən məmnun olduğum bu biliklə öz nəzarətçi qolunuzu və ya başqa bir tətbiq edə bilərsiniz.
Bütün elektron komponentlərin mağazada əldə etmək üçün bağlantıları, 3d printerə faylları və Arduino IDE kodu var.
TLV493D bir Joystick ola bilər 3D maqnit sensoru TLV493D-A1B6, kiçik 6 pinli bir paketdə son dərəcə az enerji istehlakı ilə dəqiq üçölçülü algılama təqdim edir. X, y və z istiqamətindəki maqnit sahəsinin aşkarlanması ilə sensor üç ölçülü, xətti və fırlanma hərəkətlərini etibarlı şəkildə ölçür.
Tətbiqlərə joysticklər, idarəetmə elementləri (ağ əşyalar, çoxfunksiyalı knoplar) və ya elektrik sayğacları (müdaxilə əleyhinə) və dəqiq açısal ölçülər və ya aşağı enerji istehlakı tələb edən digər tətbiqlər daxildir. İnteqrasiya edilmiş temperatur sensoru, etibarlılığı yoxlamaq üçün də istifadə edilə bilər. Əsas xüsusiyyətlər, əməliyyat zamanı çox az enerji istehlakı olan 3D maqnit algılamadır.
Sensor 1 MBit/saniyəyə qədər 2 telli standart I2C interfeysi və hər biri üçün 12 bit məlumat qətnaməsi, ölçü istiqaməti (Bx, By və Bz xətti sahə ölçümü +-130mT-ə qədər) ilə rəqəmsal çıxışa malikdir. TLV493D-A1B6 3DMagnetic, müstəqil bir xarici təyyarədir.
Arduino IDE uyğun olan və 3.3V məntiq səviyyəsinə malik istənilən mikrokontrolörə asanlıqla qoşa bilərsiniz. Bu layihədə Electronic Cats breakout və daha sonra izah edəcəyim bir inkişaf lövhəsindən istifadə edirik.
electroniccats.com/store/tlv493d-croquette…
TLV493D sensoru istifadə etmənin üstünlüyü, məlumatı almaq üçün yalnız I2C ilə iki kabeldən istifadə edilməsidir, buna görə də kartda çox az pin varsa çox yaxşı bir seçimdir, həm də I2C -nin faydaları sayəsində daha çox əlaqə qura bilərik. sensorlar. Bu layihə üçün depo burada tapa bilərsiniz. Bu layihə üçün bir 3D printerdə çap edə biləcəyiniz və ya ən yaxın 3D çap mağazasında çap etdirə biləcəyiniz bir joystick istifadə edəcəyik.
. STL faylları layihənin sonunda əlavə olunur. Montajı çox sadədir, bunu videoda görə bilərsiniz
Bu vəziyyətdə, bu layihəni müəllifin səhifəsində tapa biləcəyiniz Mearm v1 robotunu hazırlayıram
5 voltluq servomotorları olduğu üçün hazırlanması və idarə edilməsi asan bir robotdur. İstədiyiniz robotu qura və ya istifadə edə bilərsiniz, bu layihə TLV493D sensoru ilə nəzarətə yönələcək.
Təchizat:
- x1 Bast Pro Mini M0 Alın
- x1 Croquette TLV493D Alın
- x1 Kit MeArm v1
- x20 Dupont Kabelləri
- x1 Protoboard
- x2 Düymə
- x1 Maqnit 5mm diametri x 1mm qalınlığı
Addım 1: Sensoru Bast Pro Mini M0 ilə bağlayın
Robot qolunu idarə etmək üçün SAMD21E ARM Cortex-M0 mikrokontrolörlü bir Bast Pro Mini M0 olan Elektron Pişiklər inkişaf etdirmə lövhəsi istifadə olunur.
Bu çip 48MHz, 256KB proqramlaşdırma yaddaşı, 32KB SRAM ilə işləyir və 1.6v -dan 3.6v -a qədər gərginlikdə işləyir. Xüsusiyyətləri sayəsində yaxşı bir performansla aşağı istehlak üçün istifadə edə bilərik və eyni zamanda CircuitPython və ya mikro nəzarətçilərə imkan verən başqa bir dil ilə proqramlaşdıra bilərik.
electroniccats.com/store/bast-pro-mini-m0/
Bu kart haqqında daha çox məlumat əldə etmək istəyirsinizsə, sizə onun anbarının linkini qoyacağam.
github.com/ElectronicCats/Bast-Pro-Mini-M0…
Servomotorların hərəkətini idarə etmək üçün servomotoru müvafiq dərəcələrə yerləşdirmək üçün siqnal göndərəcək TLV493D maqnit sensoru istifadə olunur.
Tək bir sensorla iki servomotoru hərəkət etdirə bilərik, bu nümunədə tutucunu idarə etmək üçün yalnız bir sensor və bir düyməni istifadə edəcəyik.
Başqa bir təklif, başqa bir TLV493D sensoru əlavə etmək və üçüncü servo motoru və tutucunu hərəkət etdirməkdir. Bunu etsəniz, təcrübənizi şərhlərdə buraxın və sizi layihəni paylaşmağa dəvət edirəm.
Şəkildə protoborddakı silahlı dövrə göstərilir.
- İlk servomotor tutucu üçündür və pin 2 -yə qoşulur
- İkinci servomotor robot bazası üçündür və pin 3 -ə qoşulur
- Üçüncü servomotor robot çiyin üçündir və pin 4 -ə qoşulur
- Dördüncü servomotor robotun dirsəyi üçündür və pin 5 -ə qoşulur
- İlk düymə, robotun hər hansı bir hərəkətini dayandırmaqdır və 2.2 Kohms müqavimətlə aşağıya doğru 8 pininə bağlanır.
- İkinci düymə tutucunun açılması və bağlanması üçün nəzərdə tutulmuşdur və 2.2Kohms müqavimətlə aşağıya doğru açılan pin 9-a bağlıdır.
Dövrə görüntüsündə TLV493D sensoru görünmür, çünki parçalanmağa əlavə edilməmişdir, lakin VCC, GND, SCL, SDA bağlayıcılarını simulyasiya etmək üçün 4 pinli bir bağlayıcı əlavə edilmişdir. Şəkildə eyni qaydada yerləşdiriliblər.
- İlk pin lövhədə 3.3 volta bağlanır
- İkinci pin GND -yə qoşulur
- Üçüncü SCL pin, lövhədə A5 pininə bağlanır
- Dördüncü SDA pin, lövhənin A4 pininə bağlanır
SAMD21 çipinin üstünlüyü sayəsində hər hansı bir rəqəmsal pinini PWM çıxışı olaraq istifadə edə bilərik ki, bu da servomotoru hərəkət etdirmək üçün düzgün nəbz genişliyini göndərməyimizə xidmət edəcək.
Nəzərə alınması lazım olan digər vacib bir məlumat, servomotorlar üçün xarici enerji təchizatıdır, dövrədə, lövhənin həddən artıq yüklənməməsi və zədələnməməsi üçün 2Amp mənbəyində 5 voltlu bir fiş konnektoru görə bilərsiniz.
Kartın və xarici mənbənin ümumi siqnal GND -nə qoşulmağı da unutmayın, əks halda servo mühərrikləri eyni arayışa malik olmadıqlarından idarə etməkdə problemləriniz olacaq.
Addım 2: Arduino IDE -ni Bast Pro Mini M0 -a kodlaşdırın
İlk şey, Bast Pro Mini M0 kartını Arduino IDE -yə quraşdırmaq olacaq, addımları Elektron Pişiklər deposunda tapa bilərsiniz və onun işləməsi üçün vacibdir.
github.com/ElectronicCats/Arduino_Boards_I…
Arduino IDE hazır olduqda TLV493D sensorunun rəsmi kitabxanasını qurmalısınız, https://github.com/Infineon/TLV493D-A1B6-3DMagnet… daxil edin və Releases bölməsinə keçin.
Kodun birinci hissəsində istifadə olunan kitabxanalar, bu halda servomotorlar üçün Servo.h və sensor üçün TLV493D.h elan olunur.
Servo.h kitabxanasından istifadə edərkən, servomotorların sayını bildirmək vacibdir, halbuki robotun 4 -ü var, yalnız 3 -ü istifadə olunur.
Sancaqlar, robotun hər hansı bir hərəkətini və tutucunun açılmasını və bağlanmasını dayandıracaq düymələr üçün elan edilir. Tutucunun vəziyyətini və hərəkətin olub olmadığını bilməyə xidmət edəcək bəzi qlobal dəyişənlər elan edilir.
Kodun ikinci hissəsində, motor monitorlarının dərəcəsinin dəyərini serial monitorunda göstərəcəyik. Başqa bir vacib məqam, servomotorlarınızdakı dərəcə həddini təyin etməkdir, bunun üçün TLV493D sensorunun hərəkətlərinin dəyərini servomotorun 0 ilə 180 dərəcə aralığına çevirən map () funksiyasından istifadə olunur.
Kodun son hissəsi üçün servomotorların hərəkətini düymə ilə aktivləşdirmək və ikinci düyməyə basıldıqda tutucunun növbəti hərəkəti üçün hansı vəziyyətdə olduğunu bilmək üçün şərtlər müəyyən edilmişdir. Əvvəlki şəkillərdə gördüyünüz kimi kodu tətbiq etmək və anlamaq çətin deyil, layihənin sonunda kodu tapa bilərsiniz.
Circuit Python istifadə etməyi öyrənirsiniz?
Bu IDE -dən istifadə etməyi öyrənmək istəyirsinizsə, Boot Pro Mini M0 kartını yükləyicini yükləmək və Python ilə proqramlaşdırmağa başlamaq üçün aşağıdakı linkdə tapa bilərsiniz.
Addım 3: 3D Parçalar
Layihənin hazırlanması ilə maraqlanırsınızsa, parçaları.stl -də yükləyib çap edə bilərsiniz. Baza və fırlanan çubuq üçün sənədləri tapa bilərsiniz.