İçindekiler:
- Adım 1: TAŞ ALET
- Adım 2: Proje Tanıtımı
- Adım 3: MPU-6050
- Adım 4: STM32 Mikrodenetleyici
- Adım 5: MPU-6050 Sürücüsü
Video: Taş Lcd + İvme Jiroskop Sensörü: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Bu belge size bir DEMO için bir STM32 MCU +MPU6050 ivmeölçer jiroskop sensörü +STONE STVC070WT seri port ekranının nasıl kullanılacağını öğretecektir.
STVC070WT firmamızın seri ekranıdır, gelişimi basit, kullanımı kolaydır, tüm ekran farkları için firmamızın web sitesine gidebilirsiniz:
Adım 1: TAŞ ALET
Ekranımızın seri port iletişimini desteklediğini belirtmekte fayda var. Bazı modeller TTL/RS232/RS485'i destekler, ancak bazıları yalnızca RS232'yi destekler. MCU'nuzun seri bağlantı noktası TTL mantık düzeyiyse, düzey dönüştürme için bir MAX3232 eklemeniz gerekir. Hangi ekranın TTL'yi, hangi ekranın hem TTL'yi hem de RS232'yi desteklediğini öğrenmek istiyorsanız, web sitemizden kontrol edebilirsiniz:
www.stoneitech.com/product/industrial-type
"Endüstriyel tip" ve "gelişmiş tip" ekranların genellikle sadece RS232 veya RS485'i desteklediğini ve sadece "sivil tip" ekranların TTL/RS232/RS485'i desteklediğini görebiliriz. "Gelişmiş tip" veya "endüstriyel tip" seçerseniz, ancak SCM'niz yalnızca TTL'yi destekler, o zaman aşağıdaki dönüşümü yapmanız gerekir:
Diğer ilgili bilgiler resmi web sitesinde görüntülenebilir veya indirilebilir:https://www.stoneitech.com/support/download
STONE ekran geliştirmenin üç adımı:
STONE TOOL yazılımı ile ekran mantığını ve düğme mantığını tasarlayın ve tasarım dosyasını ekran modülüne indirin. MCU, STONE ekran modülü ile bir seri port üzerinden iletişim kurar.
2. adımda elde edilen verilerle MCU diğer işlemleri yapar.
Adım 2: Proje Tanıtımı
Proje tanıtımı
Bugün size göstereceğim yerçekimi, jiroskop, Euler Açısı Demosu, Fonksiyonlar aşağıdaki gibidir:
- Hızlanma değerlerini gösteren üç metin kutusu
- Üç metin kutusu jiroskop değerlerini gösterir
- Üç metin kutusu Euler Açısı değerlerini görüntüler
- Bir metin kutusu, geçerli yenileme süresini görüntüler
- İki düğme yenileme süresini ayarlar
İlk olarak, iki UI arayüzü tasarlamak için Photoshop kullanmamız gerekiyor ve tasarım sonuçları aşağıdaki gibidir:
İlk görüntü ana ekran görüntüsü, ikinci görüntü ise düğme efektidir. Ardından "TOOL2019"u açıp TOOL'da efektleri tasarlıyoruz:
İki ana bileşen kullanılır:
Sayısal gösterge birimi
Artımlı düğme
Tasarımdan sonra simülasyon işleminin etkisi simülasyon arayüzünde görülebilir:
Adım 3: MPU-6050
mpu-6050, dünyanın ilk entegre 6 eksenli hareket işleme çipidir. Çok bileşenli çözümle karşılaştırıldığında, kombine jiroskop ile hızlandırıcı zaman ekseni arasındaki fark sorununu ortadan kaldırır ve çok fazla paketleme alanını azaltır. Üç eksenli manyetometre zamanlamasına bağlandığında, mpu-6050, I2C veya SPI bağlantı noktalarına eksiksiz bir 9 eksenli hareket füzyon çıkışı sağlar (SPI yalnızca mpu-6000'de mevcuttur).
algılama aralığı
mpu-6050'nin açısal hız algılama aralığı ±250, ±500, ±1000 ve ±2000°/SEC (DPS)'dir ve bu, hızlı ve yavaş eylemleri doğru bir şekilde izleyebilir. Ayrıca kullanıcılar hızlandırıcıların algılama aralığını ±2g, ±4g±8g ve ±16g olacak şekilde programlayabilir ve kontrol edebilir. Ürün verileri 400kHz'e kadar IIC veya 20MHz'e kadar SPI ile iletilebilir (SPI sadece mpu-6000'de mevcuttur). Mpu-6050 farklı voltajlarda çalışabilir, VDD'nin voltaj beslemesi 2.5v ±%5, 3.0v ± %5 veya 3,3v ±%5 ve mantık arabirimi VDDIO'nun güç kaynağı 1,8v ±%5'tir (VDD yalnızca MPU6000 için kullanılır). mpu-6050'nin 4x4x0.9mm (QFN) ambalaj boyutu sektörde devrim niteliğindedir. Diğer özellikler, çalışma ortamında yalnızca ±%1 değişen yerleşik sıcaklık sensörlerini ve osilatörleri içerir. Başvuru
Mobil algılama oyunları artırılmış gerçeklik, EIS: Elektronik Görüntü Sabitleme (OIS: Optik Görüntü Sabitleme) yaya gezgininin "sıfır dokunma" hareketiyle kullanıcı arayüzü. Akıllı telefon, tablet cihaz, el oyun ürünü, oyun konsolu, 3D uzaktan kumanda, taşınabilir navigasyon cihazı, İHA, denge arabası.
özellikleri
6 - veya 9 eksenli rotasyon matrisi, kuaternion, Euler Angle forma füzyon hesabı verilerinin dijital çıkışı. 131 LSBs/°/ SEC duyarlılığı ve ±250, ±500 tam ızgara algılama aralığına sahip 3 eksenli açısal hız sensörü (jiroskop), ±1000 ve ±2000°/ SAN. Bir program tarafından kontrol edilebilir ve program kontrol aralığı ±2g, ±4g, ±8g ve ±16g'dir. Hızlandırıcı ve jiroskop ekseni arasındaki hassasiyeti kaldırın ve Ayarlar ile sensör kaymasının etkisini azaltın. DMP (Dijital Hareket İşleme) motoru, karmaşık füzyon algoritmaları, sensör senkronizasyonu, duruş algılama vb. yükünü azaltır. Hareket işleme veritabanı, Android, Linux ve Windows'ta yerleşik olan çalışma süresi sapması ve manyetik sensör düzeltme algoritmalarını destekler. Dijital çıkışlı ve dijital girişli sıcaklık sensörü Sync pin desteği video elektronik gölge fazı stabilizasyon teknolojisi ve GPS programlanabilir kontrol kesintisi, hareket tanıma, sallama, resmi yakınlaştırma ve uzaklaştırma, yuvarlanma, hızlı iniş kesintisi, yüksek g kesintisi, sıfır hareket algılamayı destekler, dokunma algılama, sarsıntı algılama. VDD'nin besleme voltajı 2.5v ±%5, 3.0v ±%5 ve 3.3v ±%5'tir. VDDIO'nun çalışma akımı 1.8v ± %5: 5mA; Bir jiroskopun bekleme akımı: 5uA; Hızlandırıcı çalışma akımı: 350uA, hızlandırıcı güç tasarrufu modu akımı: 400kHz'e kadar hızlı modda 20uA@10Hz I2C veya tam sıcaklık aralığında yalnızca ±%1 frekans değişiminde 20MHz dahili frekans üretecine kadar SPI seri ana bilgisayar arayüzü. Taşınabilir ürünler için tasarlanmış minimum ve en ince ambalaj (4x4x0.9mm QFN), RoHS ve çevre standartlarını karşılayacak şekilde test edilmiştir. iğne hakkında
SCL ve SDA, MCU'nun MPU6050'yi kontrol ettiği MCU'nun IIC arayüzüne bağlanır. Dokuz eksenli bir sensör oluşturmak için manyetik sensörler gibi harici bağımlı cihazları bağlamak için kullanılabilecek bir IIC arayüzü, AXCL ve XDA da vardır. VLOGIC, IO portunun voltajıdır ve en düşük pinin ulaşabileceği voltajdır. 1.8v. Genel olarak, VDD. AD0'ı doğrudan kullanabiliriz, IIC adresinin en düşük sırasını kontrol eden IIC arayüzünden (MCU'ya bağlı) adres kontrol pinidir. GND bağlıysa, MPU6050'nin IIC adresi 0X68 ve VDD bağlıysa 0X69'dur. Not: Buradaki adres, en düşük veri aktarımı sırasını içermez (en düşük sıra, okuma ve yazma için kullanılır). Kullandığım mpu-6050 modülü aşağıdadır:
Adım 4: STM32 Mikrodenetleyici
STM32F103RCT6 MCU'nun güçlü işlevleri vardır. MCU'nun temel parametreleri şunlardır:
Seri: STM32F10X
Çekirdek: ARM - COTEX32
Hız: 72 MHZ
İletişim arayüzü: CAN, I2C, IrDA, LIN, SPI, UART/USART, USB
Çevresel ekipman: DMA, motor kontrolü PWM, PDR, POR, PVD, PWM, sıcaklık sensörü, WDT
Program depolama kapasitesi: 256KB
Program hafıza tipi: FLAŞ
RAM kapasitesi: 48K
Voltaj - güç kaynağı (Vcc/Vdd): 2 V ~ 3,6 V
osilatör: dahili
Çalışma sıcaklığı: -40°C ~ 85°C
Paket/muhafaza: 64-lqfp
Bu projede STM32F103RCT6'nın UART, GPIO, Watch Dog ve Timer'ını kullanacağım. Proje için kod geliştirme kaydı aşağıdadır. STM32, aşina olmanız gereken Keil MDK yazılım geliştirmesini KULLANIR, bu yüzden bu yazılımın kurulum yöntemini tanıtmayacağım. STM32, j-link veya st-link ve diğer simülasyon araçları aracılığıyla çevrimiçi olarak simüle edilebilir. Aşağıdaki resim kullandığım STM32 geliştirme kartıdır:
Seri sürücü ekleSTM32F103RCT6'nın birkaç seri bağlantı noktası vardır. Bu projede PA9/PA10 seri port kanalını kullandım ve seri port baud hızı 115200 olarak ayarlandı.
Tam bir koda ihtiyacınız varsa lütfen bizimle iletişime geçin:
www.stoneitech.com/contact 12 saat içinde size cevap vereceğiz.
Adım 5: MPU-6050 Sürücüsü
Bu kod, MPU6050 verilerini okumak için IIC iletişim modunu KULLANIR ve IIC iletişimi, yazılım simülasyonu IIC'yi KULLANIR. Pek çok ilgili kod var, bu yüzden onları buraya yapıştırmayacağım.
Tam bir koda ihtiyacınız varsa lütfen bizimle iletişime geçin: https://www.stoneitech.com/contact Size 12 saat içinde cevap vereceğiz.
İşlem etkisi için lütfen aşağıdaki resme bakın:
Proje hakkında daha fazla bilgi edinmek için buraya tıklayın
Önerilen:
ADXL345 ve Parçacık Fotonu Kullanarak İvme Ölçümü: 4 Adım
ADXL345 ve Parçacık Fotonu Kullanarak Hızlanma Ölçümü: ADXL345, ±16 g'a kadar yüksek çözünürlüklü (13 bit) ölçüme sahip küçük, ince, ultra düşük güçlü, 3 eksenli bir ivmeölçerdir. Dijital çıkış verileri, 16 bitlik ikili tamamlayıcı olarak biçimlendirilir ve I2 C dijital arabirimi aracılığıyla erişilebilir. Bunu ölçer
H3LIS331DL ve Arduino Nano Kullanarak İvme Ölçümü: 4 Adım
H3LIS331DL ve Arduino Nano Kullanarak İvme Ölçümü: H3LIS331DL, dijital I²C seri arayüzlü, “nano” ailesine ait, düşük güçlü, yüksek performanslı 3 eksenli doğrusal ivmeölçerdir. H3LIS331DL, kullanıcı tarafından seçilebilen ±100g/±200g/±400g tam skalaya sahiptir ve hızlanmaları ölçebilir
ADXL345 ve Raspberry Pi Kullanarak İvme Ölçümü: 4 Adım
ADXL345 ve Raspberry Pi Kullanarak Hızlanma Ölçümü: ADXL345, ±16 g'a kadar yüksek çözünürlüklü (13-bit) ölçüme sahip küçük, ince, ultra düşük güçlü, 3 eksenli bir ivmeölçerdir. Dijital çıkış verileri, 16 bitlik ikili tamamlayıcı olarak biçimlendirilir ve I2 C dijital arabirimi aracılığıyla erişilebilir. Bunu ölçer
H3LIS331DL ve Raspberry Pi Kullanarak İvme Ölçümü: 4 Adım
H3LIS331DL ve Raspberry Pi Kullanarak İvme Ölçümü: H3LIS331DL, dijital I²C seri arayüzlü, “nano” ailesine ait, düşük güçlü, yüksek performanslı 3 eksenli doğrusal ivmeölçerdir. H3LIS331DL, kullanıcı tarafından seçilebilen ±100g/±200g/±400g tam skalaya sahiptir ve hızlanmaları ölçebilir
BMA250 ve Arduino Nano Kullanarak İvme Ölçümü: 4 Adım
BMA250 ve Arduino Nano Kullanarak Hızlanma Ölçümü: BMA250, ±16 g'a kadar yüksek çözünürlüklü (13 bit) ölçüme sahip küçük, ince, ultra düşük güçlü, 3 eksenli bir ivmeölçerdir. Dijital çıkış verileri, 16 bitlik ikili tamamlayıcı olarak biçimlendirilir ve I2C dijital arabirimi aracılığıyla erişilebilir. Statiği ölçer