Lähes kaikissa sulautetuissa laitteissa tarvitaan langaton yhteys internetiin. Sen toteuttaminen onnistuu parhaiten oikein valitun alustan avulla.

 Artikkelin on kirjoittanut Cypress Semiconductorin vanhempi sovellusinsinööri Vikram Ramanna.

Esineiden internet (IoT) houkuttaa monia elektroniikkataloja, koska mahdollisuus liittää aiemmin erillisiä laitteita verkkoon on niin laaja. Lähes joka kodista löytyy wifi-reititin ja standardin Bluetoothin tai Bluetooth Smart Radion avulla laitteet voidaan liittää satoihin miljooniin aina päällä oleviin älypuhelimiin tai tabletteihin.

Vaikka IoT:lle on olemassa lähes universaali radioinfrastruktuuri, ei tämä tarkoita että luotettavan langattoman internet-yhteyden tuominen sulautettuihin laitteisiin olisi helppoa. Itse asiassa monilla tapaa radio itsessään on sulautetun laitteen suunnittelijan ongelmista pienimpiä. Suunnittelun ohjelmisto-osuus vaatii erityistä huomiota, kuten tässä artikkelissa pyritään osoittamaan.

Miksi tarvitaan alusta?

WiFi- ja Bluetooth-yhteydet – sekä klassiessa että BLE- eli low energy -muodossaan – ovat tulossa selvästi yleisimmiksi tavoiksi liittää kodin, toimiston, tehtaan ja julkisten tilojen IoT-laitteet verkkoon. Tämä johtuu siitä, että näitä tekniikoita tukevia verkkoja löytyy lähes kaikkialta. Muut radiotekniikat eivät tarjoa läheskään vastaavaa käytettävyyttä tai peittoa.

Tämän takia monet komponenttien valmistajat ovat tuoneet markkinoilla laajan valikoima wifi- ja Bluetooth-piirisarjoja, RF-mikro-ohjaimia, RF-moduuleita ja jopa kokonaisia WiFi-yhdyskäytäviä. Nyt internet-liitännän sulauttamiseen vaatimat komponentit on helppo löytää ja suhteellisen edullisia ostaa.

Radiokomponentin valitseminen on tietenkin vasta toimivan WiFi- tai Bluetooth-järjestelmän suunnittelun ensimmäinen askel. Vaikeinta ja eniten aikaa vievää missä tahansa IoT-laiteprojektissa on ohjelmiston kehitys. Kun verkkoon liitytään WiFin tai Bluetoothin välityksellä, ohjelmistovaatimuksiin sisältyy todennäköisesti tuki useilla sovellusprotokollille kuten HTTP, SMTP, NTP ja MQTT, joilla toteutetaan yhteys webbi- ja sovelluspalvelimiin internetin yli. Erityisesti kuluttajalaitteissa toteutetaan usein alempi sovellustaso, jotta saadaan saumaton yhteensopivuus yhteensopivien laitteiden kanssa – esimerkkeihin kuuluvat Applen HAP-protokolla (Homekit Accessory Protocol) tai Googlen ”Works with Nest” -järjestelmä (ks. kuva 1).

Vahva tietoturva on tänään pakollinen osa jokaisessa nettiin kytketyssä laitteessa, sekä varmistamaan käyttäjän datan ja toimintojen suojaainen että suojaamaan luvaton pääsy verkkoon IoT-laitteen kautta. Tämä edellyttää, että sulautetun laitteen kehittäjä hyödyntää viimeisimpiä internetin tietoturvatekniikoita, kuten TLS 1.2:aa (Transport Layer Security) tai muita turvaprotokollia, joilla voidaan suojata datatoiminnot ja viestinvaihto laitteiden ja pilven välillä SSL-kerroksen (Secure Sockets Layer) yli.

Kuva 1. Nest-termostaatti, joka on Googlen Works with Nest -ekosysteemin sydän.

Yksityiskohtaisesti nämä tietoliikenne- ja tietoturvaprotokollat tuntevia sulautettuja kehittäjiä on vähän, joten useimmat laitevalmistajat tarvitsevat tukea toteuttaakseen ne omissa tuotteissaan. Vaikka WiFi- tai Bluetooth-piirisarjan toimittaja voi tuoda perustason TCP/IP-pinon käyttöön, on harvinaista että kaikki edellä mainitut yhteys- ja suojatoiminnot liitetään RF-komponentin mukaan.

Ongelma ei lisäksi pääty tähän. Jotta sovellustaso, tietoturvataso ja tietoliikennetaso toimivat koordinoidusti ja hallittavalla tavalla, järjestelmäarkkitehtuuri edellyttää käyttöjärjestelmän hallinnoimaan toimintoja kute priorisointi ja muistin allokointi. Sulautetuissa laitteissa valitaan yleensä reaaliaikakäyttöjärjestelmä (RTOS), joka toimii nopeasti ja deterministisesti, ja joka tarvitsee vähän muistia. Näin kehitystehtää laajenee lisää ja pitää sisällään myös RTOS:n integroinnin sekä alla olevaan radiolaitteistoon että RTOS:n päällä oleviin turva-, tietoliikenne- ja sovelluskerroksiin.

Mittava softahaaste

Nyt näemme jo ohjelmistokehitystehtävän laajuuden, kun halutaan toteuttaa langaton nettiliitäntä laitteeseen. Koska tehtävä on mittava, suunnittelijan pitäisi miettiä kahta asiaa ennen kuin ryhtyy komponenttien valintaan:

Onko olemassa tuottavaa kehitysympäristöä, joka pystyy tukemaan suunnittelijaa koko projektin läpi, käyttöjärjestelmästä protokollakerrokseen ja sovelluskerrokseen?

Mitä tapahtuu tämän projektin lopussa? Onko laiteohjelmisto uudelleen käytettävissä seuraavassa IoT-projektissa ja sitä seuraavissa projekteissa?

Vastaukset näihin kysymyksiin johtavat suoraan kehitystiimin RF-laitevalintaan, koska se määrittelee pääseekö tiimi käsiksi tarvitsemiinsa ohjelmistonkehitysresursseihin. Tällä valinnalla voi olla kauaskantoisia seurauksia: tämän päivän projektissa luodaan periytyvää legacy-koodia, jota tulevissa projekteissa voi olla hyödyllistä käyttää. Tuossa tulevassa projektissa voidaan kuitenkin käyttää uutta laitteistoa, joka on esimerkiksi päivitetty tukemaan WiFin tai Bluetoothin tulevia määrityksiä. Mikäli aiempaan projektiin ei ole sisäänrakennettua mekanismia ohjelmiston siirrettävyydelle (portability), sen uudelleenkäyttö uudella raudalla voi olla mahdotonta.

WICED

Näitä kahta ongelmaa Cypress on lähtenyt ratkaisemaan WICED-alustallaan (nimi WICED on lyhenne nimestä Wireless Internet Connectivity for Embedded Devices). Alustan perustan muodostaa WICED-ohjelmistokehitysalusta (SDK). Sillä toteutettu ohjelmisto toimii millä tahansa Cypressin WICED-radiomoduulilla. Moduuleja on tarjolla pelkkään WiFi-yhteyteen, WiFin ja klassisen Bluetoothin yhdistelmään, sekä klassisen Bluetoothiin ja BLE-yhteyden yhdistelmään. Lisäksi WICED-alusta tukee erilaisia mikro-ohjainperheitä:

- Cypressin FM4-sarja
- STMicroelectronicsin STM32F2- ja STM32F4-perheet
- Microchipin AT91SAM4S16B
- NXP Semiconductorsin Kinetis K61-, LPC17xx- ja LPC18xx-perheet

SDK-alustan tarkoitus (ks. kuva 2) on kiihdyttää ja yksinkertaistaa verkkoon liitettävän laitteen ohjelmiston kehitystä. Pakettiin sisältyy:

- Sovellusohjelmointirajapintoja ja ajureita.
- ThreadX-, NuttX- ja FreeRTOS-reaaliaikakäyttöjärjestelmien natiivi tuki. Kehittäjät voivat myös kääntää muista RTOSeja WICED-alustalla. ThreadX jaetaan binäärimuodossa WICEDin mukana rojaltivapaasti.
- NetX-, NetXDuo- ja LwIP-verkkoprotokollien tuotantovalmiiden versioiden natiivi tuki. Muita TCP/IP-pinoja voidaan helposti portata WICED-alustalle. NetX ja NetXDuo toimiteraan binäärimuodossa WICEDin mukana rojaltivapaasti.
- Tuotantovalmiit tietoturvapinot.
- Integroidut, lisensoidut kirjastot, joilla toteutetaan kolmansien osapuolten ohjelmistoja kuten Applen Homekit-protokolla.
- Integroitu tuki IoT-pilvialustoille kuten Amazonin AWS ja IBM:n BlueMix.

Kuva 2. WICED SDK tarjoaa kokonaisen ohjelmistokehyksen IoT-laitteen suunnitteluun.

Kehitysalusta on yhteensopiva avoimen lähdekoodin Eclipse-kehitysympäristön kanssa, joten suunnittelijan voivat hyödyntää kaikkia Eclipsen ominaisuuksia ja toimintoja sovellusten kehittämiseen ja debuggaukseen Cypressin RF-tuotteilla. Käyttäjät voivat myös laajentaa alustaa Eclipse-yhteensopivilla lisäosilla, jotka on tuotu muista kehitysympäristöistä kuten vaikkapa IAR:n Embedded Workbenchistä.

Nopeasti liikkeelle

SDK mahdollistaa internetiin liittyvien laitteiden nopean kehityksen tarjoamalla kattavan kehyksen tietoliikenteelle, tietoturvalle, middleware-ohjelmistoille ja sovelluksille. Cypress auttaa kehittäjiä myös tarjoamalla suuren kirjaston sovelluskoodiesimerkkejä, joten kehittäjät saavat varaslähdön pyrkiessään toteuttamaan heille usein tuntemattomia elementtejä kuten Googlen Works With Nest.

Laiteidean toimivuuden todistava proof-of-concept -kehitys onnistuu Arduino-yhteensopivilla kehityskorteilla, joita on tarjolla jokaiselle Cypressin valmistamalle WICED RF -moduulille ja RF-mikro-ohjeimelle. Yhdistämällä tuotantovalmista ohjelmistoa ja IoT-pilvialustojen natiivia tukea kehityskorteilla voivat käyttäjät saada ideansa toimimaan livenä internetissä muutaman minuutin sisällä paketin avaamisesta ja virran syöttämisestä kortille.

Toinen avainkysymys sulautettujen laitteiden kehittäjälle IoT-projektin alussa on, kuinka taata koodin uudelleenkäyttö tulevissa projekteissa. WICED-alustalla tämä mahdollistetaan laitteiston HAL-absraktiokerroksella (HAL, hardware abstraction layer), joka näkyy kuvassa 2. Tämä tekee koko ajurien, pinojen, RTOSin ja sovellusten ohjelmistokehyksestä laiteriippumatonta. Esimerkiksi WICED WiFi 802.11b -moduulia varten kehitetty koodi voidaan yksinkertaisesti uudelleenkäyttää päivitetyssä 802.11n-moduulissa, koska molemmat moduulit tukevat alustan HAL-kerrosta.

Kuva 3. WICED-alustan tukemat laitearkkitehtuurit.

Tämä mahdollistaa laitteiston vaihtamisen kesken projektin. WICED tukee laajaa valikoimaa laitearkkitehtuureita (ks. kuva 3). Protokehitysvaiheessa suunnittelutiimi saattaa päättää haluta siirtää WiFi-protokollan ulkoiselta isäntäprosessorilta integroidulla WiFi-moduulille, kuten CYW43907-piiri, jolla on ARM Cortex-R4 -prosessoriydin. Arkkitehtuuri toimii HAL-kerroksen päällä, joten se voidaan uudelleenkäyttää toisessa arkkitehtuurissa saman HAL-kerroksen päällä.

Ohjelmisto määrittelee laitevalinnat

IoT-laitekehityksessä ohjelmistovaatimusten pitäisi määritellä laitteiston valinnan. Monet markkinoilla tarjolla olevista WiFi- ja Bluetooth-radioista ovat laitenäkökulmasta erinomaisia suorituskyvyltään ja määrityksiltään. Suunnittelijan näkökulmasta niiden ongelmana on integrointi tietoturvalliseksi ohjelmistoympäristöksi, joka tukee koodin uudelleenkäyttöä.

Tämän toiminnallisuuden toteuttaminen peräänkuuluttaa dedikoitua ohjelmistoalustaa, jossa kehitys on helppoa, koodi on laiteriippumatonta ja eri laitearkkitehtuurien välillä voidaan valita. Tämä on tarkoitus WICED-alustan takana. Laajentamalla jatkuvasti alustalla tarjolla olevien moduulien alaa ja toimintoja Cypress haluaa tuoda alustan käytettäväksi mahdollisimman monessa huomisen IoT-suunnittelussa.

ETNtv

Watch ECF videos

Korteilla vauhtia IoT-kehitykseen

Sulautetun laitteen kehitys onnistuu useimmiten helpoiten valmiiden moduulien avulla. Nykyään niitä saa myös tehokkailla Apollo Lake -sarjan prosessoreilla varustettuna.

Lue lisää...

Suomen suurin valtti kybersodassa on luottamus

Teknologia19 – Aalto-yliopiston kyberturvallisuusprofessori Jarno Limnéll uskoo, että luotettavuudesta voi tulla suomalaisten yritysten suurin myyntivaltti tulevaisuudessa. – Tärkein kysymys on tulevaisuudessa, kehen ja mihin voimme luottaa. Luottamuksesta on tulossa hyvin arvokas aineeton pääoma yrityksille, Limnéll sanoi eilen messukeskuksessa.

Lue lisää...

LATEST NEWS

NEW PRODUCTS

 

NEWSFLASH

Ciklum, established in 2002, is a custom product engineering company with a global presence across 15 countries in 3 continents. We specialize in crafting bespoke digital solutions that push boundaries and transform industries, including full-scale IoT solutions. Whether it's cutting-edge embedded systems, data architecture or IoT, we seamlessly integrate our solutions into your existing infrastructure.

 

 

Check Point Software Technologies Ltd. is a leading provider of cyber security solutions to corporate enterprises and governments globally. Check Point Infinity’s portfolio of solutions protects enterprises and public organisations from 5th generation cyber-attacks with an industry leading catch rate of malware, ransomware and other threats.

 

 

 

AcalBfi is a leader in the development of custom technology solutions for electronic applications. Our engineers and our approach will ensure we can solve your technical challenges with custom solutions that integrate multiple technologies.

 

Analog Devices, Inc. is a global semiconductor leader that bridges the physical and digital worlds to enable breakthroughs at the Intelligent Edge. ADI combines analog, digital, and software technologies into solutions that help drive advancements in digitized factories, mobility, and digital healthcare, combat climate change, and reliably connect humans and the world.

 

EBV Elektronik was founded in 1969 and is one of the leading specialists in European semiconductor distribution. This success is based on the underlying company philosophy, which was developed a long time ago and which still applies today: operational excellence, flexibility, reliability and execution – with the goal of achieving the highest degree of customer satisfaction. 

  

The Rohde & Schwarz technology group develops, produces and markets a wide range of electronic capital goods. With its extensive product portfolio, the company makes an important contribution to a safer and connected world. In the test & measurement, secure communications, networks & cybersecurity and broadcast & media markets, customers worldwide rely on Rohde & Schwarz and its cutting-edge solutions.

 

 

 

Mespek is an industrial electronics company. Our main product areas are embedded modules, industrial computing, test & measurement modules and server management systems (KVM-switches). Besides our domestic customers we have clients also in several countries such as Benelux, China, Estonia, Ireland, Norway, Russia, Sweden, Switzerland, et cetera..

 

We offer unique and cost-effective customized solutions based on electronic components and systems, as well as standard products from selected manufacturers. We also have own production company for electronics and cabling in Sweden. We have 90 years of experience, deep engagement, knowledge together with trustworthy and effective logistics worldwide. We are ISO 9001 and ISO 14001 certificated.

 

Richardson RFPD, an Arrow Electronics Company, is an electronic component distributor focused on RF and Wireless Communications, industrial IoT, Power Conversion and renewable energy markets. With our global reach and extensive technical capability, we serve our customers through component development and selection, technical support, and world-class logistics and supply chain capabilities. Whether designing with discrete components or looking to take advantage of integrated circuits or systems RichardsonRFPD’s worldwide design centers and technical sales team provide comprehensive support to bring your product ideas to market.

u‑blox is a global technology leader in positioning and wireless communication in automotive, industrial, and consumer markets. Their smart and reliable solutions, services and products let people, vehicles, and machines determine their precise position and communicate wirelessly over cellular and short range networks. With a broad portfolio of chips, modules, and secure data services and connectivity, u‑blox is uniquely positioned to empower its customers to develop innovative and reliable solutions for the Internet of Things, quickly and cost‑effectively.

KYOCERA AVX is a leading global manufacturer of advanced electronic components, including antennas, fuses, capacitors, filters, couplers and RF switches, engineered to accelerate technological innovation and build a better future. Supplying more than one million antennas per day, KYOCERA AVX is an industry-leading supplier of innovative antenna solutions, covering all major frequency bands and applications. KYOCERA AVX antennas utilize a wide array of materials -including LDS, stamped metal, ceramic, PCB, and FPC- to support a variety of custom and standard configurations (external indoor/outdoor, embedded on/off-board).

 

 





ECF template