Individální projekty MPOA

Mikroprocesory s architekturou ARM

Uživatelské nástroje

Nástroje pro tento web


2019:hb100-radar

Toto je starší verze dokumentu!


Úvod

Tato práce se zabývá návrhem a realizací radarového čidla HB100. Jedná se o senzor měření rychlosti, jehož princip je založený na Doplerově jevu. Výsledná frekvence je dána rozdílem přijaté a vyslané frekvence (10.525 GHz). Modul má výstup pro analogový signál, který chrakterizuje detekovaný pohyb (sinusový signál o frekvenci dané rychlostí objektu). Tento signál bylo nutno zesílit, proto byla vztvořena externí destička, která mimo jiné slouží i k napájení senzoru (+5V). Součástí měřicího přístroje je výpočetní jednotka, která zpracovává data z modulu pomocí FFT z knihovny CMSIS (DSP). Jako výpočetní jednotka byla zvolena vývojvá deska STM32F4 Disco. Ta mimo zpracování dat a napájení senzoru slouží také k přenosu informací do PC. Přijatá data jsou v PC zobrazena ve skriptu v jazyce Python. Přenos je realizován pomocí virtuálního COM portu.

Realizace

Na obrázku je schéma externí destičky. Velikost zesílení byla zvolena tak, aby bylo možné detekovat pohyb v přímé blízkosti senzoru pro jednodušší testování.

K vytvoření firmwaru sloužil nástroj STM32CubeMX, schopný generovat kód s již nakonfigurovanými periferiemy (ADC, VCP ..). Jako uživatelské rozhraní posloužilo IDE od IAR EW, které mají knihovnu CMSIS - DSP v základu.
CMSIS nabízí mnoho způsobů výpočtu spektra mezi nejpoužívanější patří výpočet komplexní (CFFT) a reálného (RFFT) FFT v kódu jsou implementovány oba způsoby a na následujících obrázcích je jejich srovnání. Obě dvě spektra jsou měřeny bez pohybu ve vnějším okolí.


Na levém obrázku je spektrum RFFT a na pravém CFFT (resp. jeho modul). Oproti CFFT má RFFT jednodušší výpočet, ale vykazuje vyšší zašumění spektra. Pro realizaci byl vybrán CFFT s výpočtem modulu Data byly vyextrahovány z debuggeru IAR a vykresleny v matlabu.

Pro přesné určení frekvence z modulu je nutné nastavit rozlišení spekrta. Toto rozlišení je dané velikostí tzv. „Binu“. Bin je disktrétní elementátrní hodnota vypočteného spektra . Výpočet binu se realizuje podílem = (vzorkovací frekvence/počet prvků), kde maximální hodnota prvků je 2048 a vzorkovací frekvence je dána nstavenou rychlostí ADC. Miniální vzorkovací frekvence ADC je 1,3125 MHz (předdělička 16 pro PCLK2 a 8 pro samotné ADC). S touto frekvencí vychází velikost binu (tedy i minimální rozlišení) na 641 Hz, takto hrubá velikost je nevhodná (chůze = 100Hz). Proto je mezi vzorky vloženo úmělé zpoždění k snížení vzorkovací frekvence. Nevýhodou je, že nelze přesně určit velikost vzorkovací frekvence, ta je nyní dána zpožděním HAL_delay a dobou provedení instrukcí (navzorkování ADC, uložení atd.). Předpokládám vyšší uplatnění doby zpoždění HAL_delay(0.9) se vzorkovací frekvencí 1,111kHz.

uint8_t press_raw[3];

Výsledky

Zdrojové kódy

Závěr

2019/hb100-radar.1579463890.txt.gz · Poslední úprava: 2020/01/19 20:58 autor: Tuan Ha