Како да се изгради сензорска мрежа со Bluetooth All-Electronic
Со голема поддршка од паметни телефони и други мобилни уреди, Bluetooth стана безжична технологија по избор за поврзување на потрошувачите со нивните лични електронски уреди, како што се носат и медицински уреди. Со воведувањето на Bluetooth 5, развивачите на IoT, покрај тоа што ги искористуваат сите овие предности, можат да обезбедат сè повеќе промовирани, повисоки опсези и стапки на податоци во врска со сензорските мрежи и другите IoT апликации.
Клучни податоци
Достапноста на интегрираните MCU-опции за Bluetooth за безжични мрежи им помогна на развивачите побрзо да ги вметнат овие компоненти во нивните дизајни. Меѓутоа, при спроведување на безбедни Bluetooth мрежи, програмерите се соочуваат со разни предизвици при создавањето Bluetooth-компатибилни услуги и програмски апликации кои можат безбедно да ги користат овие компоненти. Оваа статија покажува дека со напредна компонента Bluetooth и придружна средина за развој од Cypress Semiconductor, програмерите можат да ги совладаат и да обезбедат безбедни центри и мрежи на сензори со Bluetooth конекција.
Со цел да се изградат дизајни за овие апликации, програмерите имаат сè поголем избор на компоненти способни за Bluetooth 5. Овие компоненти со комплетен RF потсистем и јадро на процесорот се во можност да извршат трансакции на ниско ниво поврзано со Bluetooth комуникација. Сепак, потребната мала потрошувачка на енергија и безбедна поврзаност во IoT мрежите може да доведат до компликации при обезбедување Bluetooth во овие апликации.
Интегрирано решение со Bluetooth
Cypress Semiconductor го разви CYW20719 MCU специјално за да одговори на зголемената побарувачка за дизајни на Bluetooth со батерии за IoT, носечки уреди, лична електроника и други апликации со мала моќност. Покрај функциите за заштеда на енергија, поддршката на Bluetooth 5 функциите, како што е методот на адаптивно фреквентно скокање, е значајна предност во многу користените радио опкружувања во врска со овие апликации.
Компонентата е опремена со подсистем Bluetooth радио со мала потрошувачка на енергија, ARM-Cortex-M4-CPU со единица со подвижна точка (FPU, единица со подвижна точка) и неколку периферни блокови (Слика 1). Покрај тоа, безбедносен мотор интегриран во чипот го забрзува шифрирањето со јавни клучеви и нуди функции за криптирање кои се неопходни за безбедни Bluetooth процеси. Единица за управување со енергија (PMU, Единица за управување со енергија), исто така, интегрирана во чипот обезбедува енергетски ефикасна работа, што многу производители сè повеќе ги бараат за компонентите што овозможуваат Bluetooth.
Радио-подсистемот на CYW20719 вклучува целосни 2,5 GHz RF сигнални патеки за испраќање (Tx) и примање (Rx). За патеката на сигналот Rx, компонентата ги ослабува сигналите надвор од опсегот. На овој начин, се постигнува чувствителност на Rx од -95,5 dBm и им овозможува на развивачите да ја користат компонентата без дополнителни филтри доколку е потребно. Во патеката на сигналот Tx има интегриран засилувач на напојување (PA, Power засилувач), кој Cypress го разви за подесување на нивоата на моќност на преносот од -24 dBm до максимум +4 dBm. Покрај интегрираниот физички слој (PHY), компонентата на чипот има и Bluetooth 5 MAC слој (средна контрола на пристап). Благодарение на оптимизираните патеки на сигналот Rx и Tx, компонентата троши само 5,9 mA Rx струја и 5,6 mA Tx струја.

Сл. 1: CYW20719 од полупроводникот Cypress комбинира процесор Arm Cortex-M4, комплетен подсистем Bluetooth и интегрирани софтверски услуги и на тој начин претставува целосен, безжичен MCU со можност за Bluetooth 5 за енергетски ефикасни дизајни.
Со цел дополнително да се минимизира потрошувачката на енергија, компонентата нуди неколку режими на потрошувачка на енергија управувана од интегриран PMU. PMU напојува одделни RF и дигитални струјни кола и вклучува интегриран регулатор на buck, нисконапонски регулатор за натопи (LDO регулатор) за дигитални кола и посебен LDO регулатор за RF кола (Слика 2). Покрај тоа, PMU нуди посебен бајпас регулатор LDO (BYPLDO) кој автоматски го заобиколува регулаторот за намалување и ги снабдува регулаторите LDO за дигиталните и HF кола ако напонот на напојување VBAT падне под 2,1 волти.
При работа, PMU ги прилагодува кола за напојување според избраниот режим. Достапните режими се целосно активен режим, режим на мирување и три различни режими на мирување. Во режимот со најмала потрошувачка на енергија, режимот SDS (режим на исклучување на мирување), PMU ги вклучува сите блокови на компонентите, со исклучок на струјата I/O, часовникот во реално време (RTC) и наменскиот заштеда на енергија Осцилатор (ЛПО), кој се користи како извор за некои блокови и тајмерот за будење.
Слика 2: PMU на Cypress CYW20719 управува со посебни кола за напојување кои можат селективно да се деактивираат во различни режими за заштеда на енергија со цел да се намали потрошувачката на енергија во дизајни за заштеда на енергија. Кимпрес полупроводник
Дури и со овие минимални ресурси, CYW20719 може да одржува врска со друга, претходно спарена компонента Bluetooth во режимот SDS, трошејќи помалку од 70 микроампери (μA) за ова. Сепак, меморијата не може да се користи во овој режим. Затоа, компонентата мора да се рестартира пред да може повторно да изврши покомплексни операции. Компонентата е малку поактивна во двата други режими на мирување, напојување-од-сон (PDS) и режим на мирување. Меѓу другото, меморијата сè уште може да се користи во овие режими. Ова е поврзано со соодветно, постепено зголемување на потрошувачката на електрична енергија. Дури и тогаш, програмерите со многу ограничен буџет за напојување можат да го користат режимот PDS за рекламните канали на Bluetooth Low Energy и активните врски. Со управување со режимите на потрошувачка на енергија на компонентата, програмерите можат да овозможат исклучително заштеда на енергија без да направат компромис за функционалноста.
Интеграција на системот
И покрај неговите флексибилни режими на работа и широкиот опсег на функции, CYW20719 бара неколку дополнителни компоненти за да се заврши хардверската интеграција во дизајнот на системот. Бидејќи важните компоненти се веќе интегрирани на чипот, програмерите треба да додадат само неколку отпорници, кондензатори за спојување, индуктор од 2,2 μH како Murata LQH2MCN2R2M52L и феритни зрна како Murata BLM15AG601SN1D (Слика 3). Сè уште е препорачливо да се постави филтер за пропусен опсег помеѓу CYW20719 и компонентите што одговараат на антената со цел да се намалат хармониците.
Слика 3: Бидејќи сите важни функции се веќе интегрирани на Cypress CYW20719, програмерите можат да ја завршат хардверската интеграција со неколку дополнителни компоненти, како што е препорачаниот филтер за пропусен опсег, за да се намалат хармониците. Кимпрес полупроводник
На сличен начин, компонентата ја олеснува интеграцијата на софтверот со својата меморија на чип, вклучувајќи 1 MB Flash, 512 KB RAM и 2 MB ROM. Додека Flash и ROM им нудат на програмерите области за складирање на нивните апликации, ROM-от на чипот е резервиран за фирмверот на компонентата и Bluetooth-профилите. Компонентата има лепенка RAM меморија за поддршка на потребните ажурирања на фирмверот. Ова е област во RAM меморијата што е поврзана преку логиката за контрола на далноводи. Конечно, компонентата има и трајно активна мемориска област, што овозможува зачувување на податоците дури и во режимите за заштеда на енергија.
Иако RAM меморијата и флеш мемориите интегрирани на чипот не мора да изгледаат раскошни во споредба со другите современи компоненти, обемната софтверска поддршка интегрирана во ROM-от осигурува дека секогаш има доволно достапна меморија за типични апликации. Cypress го конфигурира ROM-от на чип со сеопфатен стек софтвер кој опфаќа сè, од најнискиот слој за апстракција на хардвер (HAL) до интерфејсот за програмирање апликации (API) за волшебната околина (безжична интернет-врска за вградени уреди) (Сл. 4).
Градејќи се на HAL, фирмверот ROM работи интегриран оперативен систем во реално време и ги презема сите интеракции со хардверот на CYW20719. Во исто време, фирмверот ROM вклучува широк спектар на слоеви на услуги со Bluetooth, вклучително и оние што го поддржуваат профилот на општи карактеристики (GATT), што е од суштинско значење за Bluetooth и профилот за општи пристап (GAP).
Слика 4: Софтверот со 2MB ROM на Cypress CYW20719 нуди комплетен софтверски стек со вклучен оперативен систем во реално време, намалувајќи ја комплексноста и стапалото на кодот за апликација на инвеститорот. Кимпрес полупроводник
Во типични апликации, системот го извршува кодот на развивачот надвор од RAM меморија, со системот со помош на Wiced API за пристап до оперативниот систем во реално време, периферните уреди и другите функции на компонентата. Иако барањата за RAM меморија можат значително да варираат, повеќето од кодот за апликација за CYW20719 обично остава доволно бесплатна RAM меморија за податоци или меморија.
За апликации со особено големи бази на кодови, програмерите можат да ја користат способноста на CYW20719 да обработуваат код на апликација. Во овој случај, волшебната околина ги вчитува областите со кодови и податоци само за читање наведени од инвеститорот во блицот на чипот и останатите делови во RAM меморијата. Овој пристап го намалува стапалото на RAM меморија на апликацијата, но може да влијае на перформансите. Следствено, програмерите мора да бидат претпазливи кога ги специфицираат областите на XIP кодот и да осигурат дека системот вчитува функции чувствителни на време во RAM.
развој на апликации
Иако CYW20719 ја поедноставува интеграцијата на дизајнот, програмерите што бараат безбедни, енергетски ефикасни апликации за Bluetooth, можат да продолжат да доживуваат значителни доцнења во завршувањето на дизајнот на хардвер и развојот на апликацијата. Китпрес 'комплет за проценка CYW920719Q40EVB-01 ја искористува софтверската околина Wiced за да обезбеди референтен дизајн и сеопфатна платформа за развој за создавање IoT апликации компатибилни со Bluetooth 5.0.
Слика 5: Комплет за проценка CYW920719Q40EVB-01 комбинира CYW20719 на носач модул со неколку основни компоненти на картичката за поддршка на типична апликација на IoT. Кимпрес полупроводник
Комплет за проценка е изграден околу носачки модул кој вклучува CYW20719 (слика 3) и детектор за напон XC6119N од полупроводникот Torex, кој е поврзан со RST_N пинот на CYW20719 за да изврши ресетирање. Носачот-модул е залемен на основната картичка на комплетот, на кој има сензор за движење со 9 оски LSM9DS1TR од ST Microelectronics, термистор NTC од серијата NCU од Murata, порти на GPIO на CYW20719, врска за дебагирање, компатибилен со Arduino Заглавија за екстензии, како и прекинувачи и LED диоди се наоѓаат како едноставен кориснички интерфејс (Слика 5).
Примерниот софтвер од Cypress ги користи CYW20719 и другите компоненти за сеопфатна демонстрација на безбедна Bluetooth-поврзаност во репрезентативна IoT мрежа што се состои од неколку компоненти на сензорот и централен центар (Слика 6). Со оваа примерочна апликација, развивачите можат да испитаат различни безбедносни нивоа за спојување на компонентата на сензорот и центарот и да ги проценат ефектите на овие различни безбедносни нивоа на размената на податоци.
За хардверот на апликацијата, развивачите користат посебен комплет CYW920719Q40EVB-01 кој е конфигуриран како безбеден центар, како и дополнителни комплети што се конфигурирани како индивидуални сензори во мрежата. Компјутер поврзан со секој комплет преку сериска врска делува како конзола за поставување параметри, прегледување податоци, печатење пораки за дебагирање и други интеракции со примерочната апликација.
Слика 2: PMU на Cypress CYW20719 управува со посебни кола за напојување кои можат селективно да се деактивираат во различни режими за заштеда на енергија со цел да се намали потрошувачката на енергија во дизајни за заштеда на енергија. Кимпрес полупроводник
Cypress го спакува софтверот за оваа примерок примена во својот пакет јазик CYW20917 BLE Secure Hub за развој на WICED околина. Во овој случај, пакетот содржи два проекти за двете одделни улоги во примерокот. Проект што треба да се извршува на комплетот наведен како безбеден центар, му овозможува на центарот да поддржува повеќе улоги на протоколот Bluetooth. Особено, софтверот на хаб треба да овозможи спојување на одделни безбедносни нивоа со разни комплети дизајнирани како робови. Проектот за сензорот се извршува на комплетите конфигурирани како робови, што е наменето да ги илустрира стекнувањето на податоци и комуникацијата на безбедносното ниво што беше поставено за време на спојката. Секој проект содржи неколку модули за заглавија и кодови кои ги поддржуваат индивидуалните функционални улоги.
Во протоколот Bluetooth, табелата за пребарување, т.н. GATT база на податоци (DB), ги дефинира видот и функциите на Bluetooth конекцијата преку збир на дефинирани услуги, од кои секоја вклучува збир на поддржани карактеристики. На пример, спецификацијата Bluetooth вклучува предефинирани услуги на ГАТТ, кои се движат од комунални функции, како што се пораки за предупредување и информации за компонентите, до функции специфични за апликацијата, како што се мерења на крвниот притисок и пулсни оксиметри. Bluetooth генерички профил за пристап (GAP) на компонента, која игра посуштинска улога од услугите на ГАТТ, дефинира како таа се идентификува со мрежата и како воспоставува врски веднаш штом ќе биде препознаена.