Openpicus

OpenPICUS: PIC perustuu langattomaan tiedonsiirtoon

openpicus.jpg

OpenPICUS on PIC 24F-sarjaan (16 bittinen Microchip prosessori) perustuva uusi, avoin laitealusta johon on liitetty joku langaton moduuli (Bluetooth ja/tai Wi-Fi).
OpenPICUS antaa käyttäjille (laitteisto ja ohjelmisto) mahdollisuuden käyttää langattomia antureita ilman laitteistoläheistä kokemusta.
Tällä hetkellä projekti on alkuvaiheessa, mutta kaikki tuntuu toimivan. Hardware on saatavissa Suomesta. Ohjelmat ovat ilmaisia, lataus ja debuggaus USBin kautta toimii.
WiFI toimii.
Mitä ei ole? suomenkielisiä opetussivuja.

Jos sinulla on hyvä idea ja haluat osallistua hankkeeseen, sinulla on mahdollisuus saada OpenPICUS ILMAISEKSI.

Mitä tarkoittaa PICUS? Se on muinaisroomalainen lintu, mutta nimi viittaa Microchip PIC prosessorisarjaan

Mikä on Flyport ? Microchipin WIFI moduuli. Siinä on Microchipin tekemät valmiit ohjelmistomodulit.

Mkä on USB nest? OpenPicus piirilevy, jossa on
*PMicrochip PIC18F2550

  • FTDI-piiri FR232RL USB/UART muunnin
  • riviliittimiä liitäntöjä varten <br>
  • Liittimet omia teholähteitä varten 3.3 ja 5V kun USB ei ole käyettävissä.
  • liitin Flyport-modulille
  • koko 57*57 mm.
  • Sarjabooloader.
  • Jumpperit sarjaportin liittämiseksi USB-muuntimeen tai piirilevyn liittimeen JP11. Liitäntä on UART-tasoinen sarjaliikenne, ei RS232
  • I2C liitäntä
  • SPI liittimet
  • 3*PWM

Vertailu Arduinoon

Nimi OpenPICUS Arduino
Prosessorivalmistaja Microchip Atmel
Langaton moduli Flyport WiFI ?
Bluetooth moduli BlueBreak ?
Falsh muisti 256K Flash,16K Ram,16 Mips ?
Mitat 57*57 mm
usbbiancodiv_p.jpg

OpenPICUS ominaisuudet:
HARDWARE

* CPU Microchip PIC 24F 16 bittinen 44-nastainen QFN, 64K Flash, 8K Ram
* Langaton (Bluetooth / Wi-Fi)
* Teholähde 5V tai 3,3 V
* Liitännät: UART, digitaalituloja, digitaalilähtöjä, analogituloa, PWM:iä, SPI-liitäntä, I2C
* Liitin: 26-nastainen IDC( koiras )sopii lattakaapelille

Ohjelmistot

* Picussarjoihin voidaan ladata ohjelmia sarjaportin kautta (ei tarvita Microchipin ohjelmointilaitetta).
* Ohjelmien lataus ja käyttöjännite saadaan myös USB-liittimeltä
* Bluetooth mallissa on SPP OBEX, audio tuki .
* Wi-Fi tarjoaa palveluja TCP portteihin, sulautettun FTP- ja sähköpostiohjelmat.
* Ohjelman kehitykseen on saatavailla ilmainen IDE ympäristö, joka luo tarkeimmät toiminat automaattisesti.

flybiancomoneta_p.jpg

* Ohjemat perustuvat Microchip 5.25 TCP/IP pinoon ja Wireless LAN pinoon.
* Microchipin C30-kääntäjä sisältyy IDE:n
* Windows Framework 4.0 tarvitaan on ohjalman ulkonäköön
* Ohjelma on open source samoin kuin hardware on vapaasti kopioitavissa

OpenPicus_IDE.jpg

Tässä aivan yksinkertainen projekti, joka luo WIFI-serverin 192.168.1.115:80. Jos sinulla on DSL-modeemissa WIFI , siitä pitää poistaa salaus ja laittaa AD-HOC verkko päälle, jotta serveri näkyy oikeassa osoitteessa.

#include "taskFlyport.h"

void FlyportTask()
{
     IOInit(D1In,in);        //    D1In alustetaan tavalliseksi kelluvaksi tuloksi 
     IOInit(D2In,inup);        //    D2In alustetaan   tuloksi,  jossa on  pullup vastus 
     IOInit(D3In,indown);    //    D3In alustetaan   tuloksi,  jossa on  pulldown vastus 
     IOInit(D4In,indown);    //    D4In alustetaan   tuloksi,  jossa on  pulldown vastus 
     int i1state;
     int URXReport;
     char StringU1[20];            //    varaan muistista UART merkkibufferi   20 mekkiä 
     WFConnect(WF_DEFAULT);        //    Komento, jolla luodaan  adhoc verkko ( default-asetuksilla, jotka on aseteltu IDE:ssä) 
     while (1)
     {

          //----------------------    IO     ------------------------------//

          /*    anto ledi 1 seuraa tulon 1 tilaa  ( se on nyt kelluva, eli tila voi olla melkein mikä tahansa)*/
          i1state = IOGet(D1In);
          IOPut(D1Out , IOGet(D1In));  // laita ledin 1 tila  inputin 1 tilan avulla. 

          /*   Tulo 2 vaihta annon 2 tilaa */
          if (iobuttonstate(D2In) == pressed)
               ioput(D2Out , toggle);        

          /*   tulo 3 vaihtaa annon 3 tilaa */           
          if (iobuttonstate(D3In) == pressed)
               ioput(D3Out , toggle);

          /*    tulo 4 vaihtaa annon 4  tilaa*/           
          if (iobuttonstate(D4In) == released)
               ioput(D4Out , toggle);

          //----------------------    UART echo   ------------------------------//               

          if (UARTBufferSize(1)!=0)                // onko merkkejä Uart1:n RX bufferissa
          {
               int num=UARTBufferSize(1);   // tarkasta ylivuoto 
               if (num > 20)
                    num = 19;
               URXReport = UARTRead(1 , StringU1 , num);    // Lue  UART 1 
                                                                // siirrä UART buffer- >  UartStr merkkijonoon 
               StringU1[num] = '\0';                                    // merkkijonon loppumerkki
               UARTWrite(1 , StringU1);        //    Tulosta sarjalliikenteelle (  Uart 1) merkit eli echo-toiminta
          }

     }

}

Käännä koodi ja lataa se ( USB-portti on minulla COM4)

bootloader.jpg

Tarkkaile koodia tavallisella sarjaliikeenne ohjelmalla ( COM4)
Paina nappia ja WIFI adc hoc serveri on luotu !

Wifi_luotu.jpgTcpip_asetukset.jpgTcpip_asetukset2.jpg

Tässä toinen ohjelma se etsii WIFI verkot jotka ova näkyvillä Flyportille

sacn.jpgsacn.jpg

Tässä langattoman kosteus- ja lämpömittarin kytkentä

sht71.jpg
Oma kokemus

Otin kaksi piirilevyä paketista ja laitoin ne yhteen.
Kytkin USB johdon ja latasin OpenPicus kääntäjän.
Käynnistin sen.
Asetin TCPIP asetukset Wizardilla ( kuva yllä) ja avasin tuon nappula prokjetin.
Käänsin sen ja latasin USBilla. Tässä vaiheessa piti hakea tieto, että USB on COM4.
Aikaa meni noin 15 minuuttia.
Tähän asti kaikki on toiminut niinkuin pitääkin.
Aina ennen radioprojetin tekeminen on ollut aika vaikeaa.

Ohjeita saa hieman selata ja API-ohje on kirjoitettu aika pienellä fontilla.
No pitää jossakin olla parantamisen varaa.

Jotta uusi serveri näkyisi WIFI asetukset pitää olla adhoc oman koneen WIFI asetuksissa
Kun 192.168.1.115 osoiteen avaa selaimella tulee näkyviin napit ja ADC arvot .
Nappeja voi painaa hiirellä ja napeilla. Molemmista vastaavat ledit vaihtavat tilaansa.

Pikkukuvissa näkyy vielä WIFI-asetukset ,jotka pitää olla oikein, AD-HOC, jotta kuka tahansa saa ne näkyviin.

wifiopen.jpg

16.3.2011 Pekka OH3GDO

[1] http://www.openpicus.com

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License