Search This Blog

Tuesday, February 21, 2017

Integration of Accelerometers

3-axis accelerometer တွေကို ကိုယ်ထည်အမာ တစ်ခုမှာ လိုအပ်ချက်နဲ့ ကိုက်ညီသလို တပ်ထားပါတယ်။ အဲဒီ ကိုယ်ထည်အမာ ကလည်း ရွေ့ချင်တဲ့ အဖြောင့် (linear) နဲ့ အလှည့် (angular) လှုပ်ရှားမှုတွေနဲ့ ရွေ့နေပါတယ်။ တပ်ထားတဲ့ accelerometer တွေက linear acceleration တွေကိုပဲ အာရုံခံနိုင်တဲ့ အတွက် angular ရွေ့လျားမှု တွေကို မသိဘူး ဖြစ်နေပါတယ်။

သိချင်တာ တစ်ခုက accelerometer တွေ အများကြီးက တိုင်းတာလို့ ရတဲ့ တန်ဖိုးတွေကို ပေါင်းပြီး ထပ်တူညီတဲ့ စုပေါင်း integrated equivalent accelerometer တစ်ခုအနေနဲ့ ရနိုင်မလား ဆိုတာပါပဲ။
စဉ်းစားကြည့်လိုက်တော့ ရနိုင်တယ် လို့ ထင်ပါတယ်။

Monday, January 9, 2017

Creating Dynamic Link Library (DLL) in C++ and Using it in Visual Basic .NET

Visual Basic .NET 2012 (vs11) မှာသုံးဖို့ အတွက် DLL (Dynamic Link Library) တခုကို C++ နဲ့ ဖန်တီးဖို့ နည်းလမ်း ၂ ခု ကို ဆွေးနွေးချင်ပါတယ်။

  • CLR Class Library
  • Win32 DLL


  • Thursday, December 15, 2016

    LaTeX Template for Thesis

    Thesis အတွက် LaTeX နမူနာ ပုံစံ တစ်ခု ကို မျှဝေ ထားပါတယ်။
    သူ့ကို https://github.com/yan9a/LaTeX_Template_Thesis မှာ ရယူနိုင်ပါတယ်။

    Wednesday, August 10, 2016

    TFT LCD Touch Screen - ILI9341

    Aliexpress ကနေ 2.4 inch 240 x 320 resolution ရှိတဲ့ TFT LCD touch screen လေး ဝယ်ပြီး သုံးကြည့်ဖြစ်ပါတယ်။



    အဲဒီ module လေးက LCD display ရော၊ touch input ရော၊ SD card reader လေးပါ ပါပါတယ်။ Adafruit libraries တွေကို သုံးပြီး ကျွန်တော် ရေးကြည့်ထားတဲ့ နမူနာ program တချို့ကို

    https://github.com/yan9a/TFT_LCD_Touch_Arduino

    မှာ တွေ့နိုင်ပါတယ်။

    Thursday, July 7, 2016

    Motor Driver - DRV8834

    Stepper motor AM1020-V-6-65 လေးကို drive လုပ်ဖို့ အတွက် motor driver လေးတခု design လုပ်ဖြစ်ပါတယ်။ အစက Allegro ရဲ့ A4988 ကို သုံးဖို့ စဉ်းစားပေမယ့် motor အတွက် supply voltage က 8V - 35V ဖြစ်နေတော့ လက်ရှိ 6V motor နဲ့ မကိုက်တာ တကြောင်း၊ chip အရွယ်ကလည်း 5 mm x 5 mm ဖြစ်နေတော့ ကိုယ်လိုချင်တဲ့ အရွယ်ထက် နည်းနည်း ကြီးနေတာတကြောင်းကြောင့် တခြား driver ကို ထပ်ရှာဖြစ်ပါတယ်။ TI ရဲ့ DRV8835 ကျပြန်တော့ 2 mm x 3 mm အရွယ်လေးကို သဘောကျပေမယ့် DC motor တွေအတွက်အဓိက ရည်ရွယ်ထားတာမို့ stepper motor ကို အလွယ်တကူ ထိန်းဖို့ indexer မပါတာကို တွေ့ရပါတယ်။ ဒါနဲ့ 4 mm x 4 mm အရွယ်၊ motor supply voltage 2.5V - 10.8V ရပြီး၊ 1.5A per coil ရတဲ့ DRV8834 ကိုပဲ ရွေးလိုက်ပါတယ်။

    Wednesday, May 18, 2016

    DS1307 Real-time Clock

    DS1307 Real-time clock လေးကို အသုံးပြုပုံ အကြောင်း ပြောချင်ပါတယ်။ AliExpress က module လေးဝယ်တာ ၁ ဒေါ်လာလောက်ပဲ ပေးရပါတယ်။ AT24C32 ဆိုတဲ့ 32k EEPROM လေးပါ အဆစ် ပါသေးတယ်။


    Figure. Setup.


    Thursday, May 5, 2016

    DRV2700 Piezo Driver

    DRV2700 က single chip Piezo driver လေးဖြစ်ပြီး 4 mm x 4 mm x 0.9 mm အရွယ်ပဲ ရှိပါတယ်။ 100 V boost ဒါမှမဟုတ် 1 kV flyback configuration နဲ့ သုံးလို့ရပါတယ်။ Supply voltage က 3 V ကနေ 5.5 V အထိပေးနိုင်ပါတယ်။ သူ့ရဲ့ evaluation module တခုဖြစ်တဲ့ DRV2700EVM လေးနဲ့ စမ်းကြည့်ထားတာ တချို့ ဆွေးနွေးချင်ပါတယ်။


    Figure. Testing DRV2700.


    Thursday, April 21, 2016

    Low Pass and High Pass Filter

    Low pass နဲ့ high pass filter လေးတွေက အမြဲသုံးနေ၊ တွေ့နေ ရလို့ သူတို့ နဲ့ ပတ်သက်တဲ့ note အချို့ ရေးချ ထားချင်ပါတယ်။ ရိုးရှင်းတဲ့ first order RC circuit လေးတွေ အတွက်ပါပဲ။


    Figure. Low pass and high pass filter.


    Sunday, April 17, 2016

    Adaptive Filter: BMFLC

    Adaptive noise canceling techniques တွေဖြစ်တဲ့
    1. Fourier Linear Combiner (FLC)
    2. Weighted-frequency Fourier Linear Combiner (WFLC)
    3. Bandlimited Multiple Fourier Linear Combiner (BMFLC)

    အစရှိတဲ့ filter တွေ အကြောင်း ပြောချင်ပါတယ်။ FLC က frequency သိတဲ့ periodic signal တခုရဲ့ amplitude နဲ့ phase ကို least mean square (LMS) algorithm သုံးပြီး adapt လုပ်ယူ ခန့်မှန်းတာပါ။ WFLC ကတော့ FLC ကို ထပ်မံဖြည့်စွက်ပြီး frequency ကိုပါ သိစရာ မလိုပါဘူး။ ဒါကြောင့် FLC လို frequency အသေဖြစ်စရာ မလိုပဲ၊ frequency ပြောင်းလဲနေ တဲ့ reference signal တွေကို ပါ adapt လုပ်နိုင်ပါတယ်။ WFLC ရဲ့ အားနည်းချက်က reference signal မှာ dominant frequency တွေ အများကြီး ပါနေရင် အလုပ်ကောင်းကောင်း မလုပ်နိုင်တော့ ပါဘူး။ အဲ့ဒါကို ဖြေရှင်းဖို့ အတွက် ကြိုတင်သတ်မှတ်ထားတဲ့ frequency band ထဲက dominant frequency တွေ အများကြီးကို track လုပ်နိုင်တဲ့ BMFLC ကို သုံးနိုင်ပါတယ်။


    Setup

    Arduino zero pro ကို သုံးပြီး စမ်းကြည့်ပါမယ်။ Code တွေကို အခြား platform ပေါ်တွေမှာ ပါ အလွယ် တကူ ယူသုံးနိုင်အောင် C နဲ့ပဲ ရေးလိုက်ပါတယ်။ ပထမ အနေနဲ့ reference signal ကို generate လုပ်ကြည့်ပြီး noise ပေါင်းထည့်ပါမယ်။ အဲဒီ signal ကိုပဲ adaptive filter နဲ့ စစ်ပြီးတဲ့အခါ serial plotter မှာ မူရင်း reference signal နဲ့ နှိုင်းယှဉ် plot လုပ်ကြည့်ပါမယ်။ အခုနောက်ပိုင်း Arduino IDE တွေမှာ Serial Monitor နဲ့ အတူ၊ Serial Plotter ပါပါလာတော့ အဝင် signal ပြောင်းသွားတဲ့အခါ adaptive filter က ဘယ်လို adaptive လုပ်သွားတယ် ဆိုတာ serial plotter မှာ ကြည့်ရတာ ပိုပြီး ထင်သာမြင်သာ ရှိပါတယ်။


    Figure. A simple setup using an Arduino Zero Pro board.


    Tuesday, April 12, 2016

    Using 3rd party CC2530 modules

    Aliexpress ကဝယ်လိုက်တဲ့ 3rd party CC2530 module သေးသေးလေးတွေ ( ပထမတခု ဒုတိယတခု ) ကို သုံးတဲ့ အကြောင်း ပြောချင်ပါတယ်။ အရင် ဆောင်းပါး မှာ TI ရဲ့ CC2530DK ကို သုံးတဲ့ အကြောင်း ပြောဖူးပါတယ်။ အခု ဆောင်းပါး ကတော့ 3rd party module တွေကို SmartRF05EB ကိုသုံးပြီး debug နဲ့ download လုပ်တဲ့ အကြောင်း ပါ။


    Figure. CC2530 အသေးလေးပါ။ 13 mm x 18 mm အရွယ်ပဲ ရှိပါတယ်။