Jak funguje XGLU?

Bezbateriové provedení měla první verze přístroje. Pro napájení se používala energie získaná z mobilního telefonu při NFC komunikaci (ke komunikaci se používá induktivní vazba mezi přijímací a vysílací cívkou na 13.56 MHz). Princip je totožný jako u RFID tagů nebo kreditních karet, které čtecí zařízení rovněž napájí. Současná verze přístroje už je bateriová (na základě zpětné vazby od diabetiků, kteří říkali, že bezbateriovost není důležitá a uvítali by spíše nezávislost glukometru na mobilním telefonu).

Aktuální průměrná spotřeba zařízení je pod 1 mA při napájecím napětí 3 V, samotné měření amperometrickým senzorem trvá asi 6 sekund, jeden celý měřící cyklus (od zasunutí jednorázového měřícího proužku po jeho vytažení na konci měření) je individuální a záleží na šikovnosti a rychlosti diabetika, typicky 30-90 sekund.

S mobilním telefonem se komunikuje prostřednictvím obvodu M24LR04, jedná se v postatě o RFID NFC tag, který lze číst mobilním telefonem a obsah jeho paměti lze zároveň modifikovat i prostřednictvím I2C sběrnice. Typická komunikační rychlost jsou desítky kbit/s. U glukometru není rychlost až tak rozhodující, při každém měření se předávají se jednotky až desítky bajtů dat.

Senzor je standardní jednorázový na amperometrickém principu. Použivá se enzym glukozaoxidaza (GOD), případně dnes už spíše vyspělejší varianty (GDH-FAD). Princip GOD funguje tak, že katalyzuje rozklad glukozy na peroxid vodíku a D-glukono-delta-lakton. Peroxid vodíku rozkládající se na kyslík a vodu pravděpodobně vadí enzymu, takže další částí proužku je redox mediátor (třeba kyanoželezité soli), které přechází mezi dvěma oxidačními stavy, zjednodušeně řečeno zprostředkovává výměnu elektronů mezi enzymem s glukozou a vodivými elektrodami. Při měření je na elektrody přivedeno konstantní napětí (v praxi vypadá zapojení např. takto) a měří se proud (typicky jednotky až desítky mikroampér, takže jeho měření je celkem bez problému), který senzorem prochází. Ten je přímo úměrný množství glukozy v krevním vzorku. Tolik asi velmi hrubý popis, jak měření funguje. Jedná se o technologii, která už je na trhu, takže jsem se přímo návrhem senzoru nezabýval a použil jsem vhodné, které jsem našel na trhu a přístroj vytvořil s nimi. Je potřeba implementovat korekci na teplotu. Samotný enzym je ještě citlivý na pH a koncentraci kyslíku ve vzorku, ale tyto parametry se špatně měří (zvláště v situaci kdy musí výrobní cena za jedno měření být v řádu desítek haléřů, max. korun, aby to pojišťovny proplácely), takže se měří jen teplota a zbylé dva parametry se většinou neřeší. Norma povoluje odchylku měření ±15 % (ISO 15197:2013, starší norma platná do května 2016 povolovala dokonce ±20 %), takže to není většinou problém.

Pro nasátí vzorku není třeba pumpa z toho důvodu, že se používá kapilárního jevu - krev se "nacucne" do dutinky v papírku sama, případně jsem v relevantních patentech a literatuře často viděl, že se do aktivní směsi senzoru přidává hydrofilní polymer (např. polyethylene oxide), ten tomu pravděpodobně také pomáhá.

K součástkám - používáme to, co je standardně na trhu - dnes už je v mikrokontrolerech stran HW víceméně všechno (AD, DA převodníky, napěťová reference, operační zesilovače) a vzhledem k dobře měřitelným proudům (nejsou to žádné pikoampéry) a přenostem, které jsou požadované (chyba samotného proužku je typicky do ±10 %, norma povoluje chybu ±15 %), takže pro náš funkční vzorek přístroje používáme PIC16LF1783, zbytek součástek v SMT provedení (pasivní součástky 0402 a 0805). U Bluetooth verze používáme hotový Bluetooth modul ISP1302 (velikost 8x8x1 mm, má v sobě ARM procesor s Bluetooth RF frontendem, plus balun a anténu), u NFC obvod M24LR04, planární NFC cívku jsem nasimuloval v Sonnetu.

Pro vývoj firmware pro PIC mikrokontroler používáme MPLABX IDE, u Bluetooth verze programuji Bluetooth mikrokontroler nRF51822 v Keil MDK-ARM. Oboje se programuje v jazyce C.

Ohledně mobilní aplikace, Bára vytvořila kompletní první verzi aplikace na Android, následně přešla na platformu Xamarin kvůli multiplatformnosti. Mobilní aplikace komunikuje se serverem pomocí REST API. Tomáš implementoval server v Java EE a klientskou část webové aplikace pomocí frameworku Vaadin. Celé řešení využívá služby z nabídky Microsoft Azure (databáze, fronty, machine learning studio atp.).

Mimo znalostí získaných ve škole nás univerzita naučila především řešit rozmanité problémy a nezaleknout se před novými výzvami. Díky FELu jsme se také navzájem poznali a díky tomu jsme mohli dát dohromady takový rozmanitý a vyvážený tým.