Search in Pinguino World !!

Sunday, June 12, 2011

PIC32-PINGUINO Power Supply

I want to build a Temperature sensor powered by a solar panel. I made some test to define the comsuption of Pinguino 32 in different configuration:

First configuration:
Pinguino 32 is powered by its power connector with a 9 Vdc power supply.

The current is about 80 mA on the power supply. Power input is 0,72 Watt.

Second configuration:
Pinguino 32 is powered by its LiPo charger connector ( as it could be with a battery ).



Now the current is about 90 mA. Power input is about 0,324 Watt.
All the tests were done with a clock frequency of 80 Mhz. Then I decided to swith the clock frequency to 40 Mhz and now the current is about 60 mA with 3,6V ( 0,216 Watts ).

Now, just have to find the good solar panel.........

Thursday, June 2, 2011

Yet another Pinguino robot

This robot is controlled with Pinguino. I like this design and it seems to work as Theo Jansen Robots.



Great work, this blog need a visit !!
You can find there a lot of ressources for Pinguino.

Temperature Sensor

I built this very simple temperature sensor with a DS18B20. It is connected on a PIC32-PINGUINO and powered from the data line.


The DS18B20 library is very simple to use, just one line to check the temperature on the sensor:

#define ONEWIREBUS 9 // define the pin connected to the 18B20+ Dline

void setup()
{
Serial.begin(9600);
pinMode(8,OUTPUT);
digitalWrite(8,HIGH); // pin 8 is used to power the 18B20 ( +Vcc )
pinMode(10,OUTPUT);
digitalWrite(10,LOW); // pin 10 is used to power the 18B20 ( GND )
}

void loop()
{
TEMPERATURE t;

if (DS18B20.read(ONEWIREBUS, SKIPROM, RES9BIT, &t))
{
if (t.sign) Serial.printf("-");
else Serial.printf("+");
Serial.printf("%d",t.integer);
Serial.printf(".%d",t.fraction);
Serial.printf("\n\r");
}
}


Now it's time to connect the DS18B20 and the zigbee shield to have a wireless temperature sensor !!


back view


Front view

ZIGBEE for PIC32

Pinguino32 uses a MRF24J40MA radio module to communicate with another Pinguino32 !!

This shield uses the UEXT connector of PIC32-PINGUINO and PIC32-PINGUINO-OTG. A very simple library is used to communicate with the module. You need only to initialise the module in the setup()

ZIG.init(channel,PAN_ID,Short_Address);

then to send data, you must use the ZIG.send instruction as described below:

ZIG.send(Dest_Address,"TOTO",4);

each module must be configured with:
- radio channel ( between 11 and 26 )
- PAN ID ( personnal area network identification between 0 and 65535 )
- address ( between 0 and 65535 ).

to receive data from another module, you must use this instruction:

length=ZIG.read(rxdata);

A simple example has been added to the example folder of revision 147 of Pinguino32X.


Have fun
JP