Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Smart Pena: Pelacakan Tangan & Gerakan Real-Time dengan Raspberry Pi dan IMU

Pendahuluan

Di era digital saat ini, menangkap input tulisan tangan biasanya memerlukan layar sentuh kapasitif atau pena stylus. Meskipun akurat, solusi ini terbatas oleh persyaratan permukaan dan kurang memiliki kebebasan spasial yang benar. Smart Pena kami menghilangkan keterbatasan ini dengan menggabungkan Raspberry Pi dengan unit pengukuran inersia (IMU) untuk melacak gerakan dan merekonstruksi trajetur secara instan. Sistem ini bergantung sepenuhnya pada giroskop dan akselemeter IMU, mentransmisikan data secara nirkabel ke Pi. Algoritma khusus kemudian memulihkan orientasi dan posisi perangkat, menyimpan data, dan merendernya secara real time pada layar TFT Pi melalui pygame. Tombol push tunggal memulai dan menghentikan perekaman, memungkinkan penggunaan yang fleksibel pada pena, robot, atau aplikasi wearable. Pendekatan ini menyajikan solusi serbaguna dan tidak bergantung pada permukaan untuk penangkapan tulisan tangan, analisis gerakan, dan sebagainya.

Tujuan

Tujuan inti adalah mengembangkan unit pelacakan modular yang dapat dipasang pada pena, robot, atau bahkan lengan manusia. Ketika host bergerak, modul mencatat trajeturnya dan memproyeksikan jalur pada bingkai dunia horizontal di layar. Berbeda dengan sistem stylus konvensional, desain kami beroperasi independen dari plane yang ditentukan sebelumnya, memungkinkan pelacakan gerakan di udara bebas atau pada permukaan tidak teratur. Kinerja yang tidak sensitif terhadap orientasi memastikan hasil yang konsisten tanpa memandang kemiringan atau penempatan.

Kalibrasi IMU

Toleransi pembuatan sering menyelisihkan poros akselemeter dan giroskop IMU, yang menyebabkan ketidaksesuaian dalam sudut Euler yang dihitung. Kami menggunakan rutinitas kalibrasi enam posisi untuk mengukur dan mengoreksi offset ini. Jig kalibrasi khusus (Gambar XX) memegang IMU dalam setiap orientasi, mencatat pembacaan sensor mentah. Matriks kalibrasi yang dihasilkan dari enam sampel ini kemudian diterapkan pada setiap pengukuran akselemeter:

\[\mathbf{A}_{\text{cal}} = \begin{bmatrix}A_x\\A_y\\A_z\end{bmatrix}, \quad \mathbf{a}_{\text{raw}} = \begin{bmatrix}a_x\\a_y\\a_z\end{bmatrix}\]

Setelah kalibrasi, vektor akselerasi yang dikoreksi \(\mathbf{A}_{\text{cal}}\) menggantikan data mentah untuk pemrosesan selanjutnya.

Fusi Sensor untuk Data Mentah

Untuk memperoleh estimasi orientasi yang kuat, kami menggabungkan output giroskop dan akselemeter menggunakan matematika kuaternion. Kuaternion menawarkan representasi rotasi yang bebas dari singularitas dan menyederhanakan transformasi vektor. Konversi antara kuaternion \(q\) dan sudut Euler \((\alpha,\beta,\gamma)\) diberikan oleh:

\[\displaystyle q = \cos\frac{\theta}{2} + \sin\frac{\theta}{2}\bigl(\cos\alpha\,\mathbf{i} + \cos\beta\,\mathbf{j} + \cos\gamma\,\mathbf{k}\bigr)\]

Untuk vektor tetap \(\mathbf{V} = V_x\mathbf{i} + V_y\mathbf{j} + V_z\mathbf{k}\), rotasi kuaternion dilakukan sebagai \(\mathbf{V}' = q \circ \mathbf{V} \circ q^{-1}\).

Karena giroskop sendirian mengalami drift seiring waktu, kami terus-menerus mengoreksi biasnya dengan membandingkan vektor gravitasi yang diukur dari akselemeter dengan estimasi gravitasi yang dihasilkan giroskop. Rutinitas UpdateIMU mengeksekusi 2.000 iterasi saat sensor diam, membangun loop umbalan proporsional-integral (PI) yang meminimalkan error sudut. Inti algoritma ditunjukkan di bawah ini:

 def UpdateIMU(self, Gyr, Acc): if np.linalg.norm(Acc) == 0: warnings.warn("Magnitudo akselemeter adalah nol. Pembaruan algoritma dibatalkan.") return Acc = np.array(Acc / np.linalg.norm(Acc)) v = np.array([[2*(self.q[1]*self.q[3] - self.q[0]*self.q[2])], [2*(self.q[0]*self.q[1] + self.q[2]*self.q[3])], [self.q[0]**2 - self.q[1]**2 - self.q[2]**2 + self.q[3]**2]]) error = np.cross(v, np.transpose([Acc]), axis=0) self.IntError += error Ref = Gyr - np.transpose(self.Kp*error + self.Ki*self.IntError) pDot = 0.5 * self.quaternProd_single(self.q, [0, Ref[0,0], Ref[0,1], Ref[0,2]]) self.q += pDot * self.SamplePeriod self.q /= np.linalg.norm(self.q) self.Quaternion = self.quaternConj(self.q) 

Data giroskop yang dikoreksi (Ref) disalurkan ke pembaruan kuaternion, menghasilkan estimasi orientasi yang stabil yang mendukung rekonstruksi trajetur yang ditampilkan pada Pi.

Baca lebih lanjut: Smart Pena: Proyek Akhir untuk ECE5725

Proses manufaktur

  1. Ide Proyek Berbasis Sensor untuk Mahasiswa Akhir Tahun Teknik
  2. Manufaktur Cerdas 2021: 10 Tren Meneroka yang Mengubah Produksi
  3. Pencahayaan Cerdas: Tonggak Utama Kota yang Benar-Benar Terhubung
  4. Log Proyek FirePick Delta: Membangun MicroFactory Sumber Terbuka dengan OpenPnP
  5. Bangun Robot Pergi Pergi – Kit Starter Arduino Mudah untuk Anak-anak
  6. Health Band: Asisten Wearable Cerdas Terpercaya untuk Lansia
  7. Tingkatkan Rumah Pintar Teratas untuk Memodernisasi Ruang Hidup Anda
  8. Memaksimalkan ROI di Manufaktur Cerdas: Payback dan Sukses Berbasis Data
  9. Sensor Ultra-Tipis Revolusioner Meningkatkan Fungsi Lensa Kontak Cerdas
  10. Memilih Proyek Otomasi yang Tepat: Panduan Strategis