Friday, July 10, 2009

Creative Problem Solving


In trying to figure out the best protocol for my wireless multinode data logger, I needed a way to visualise the problem. For those interested, here's the problem statement... simplified to everyday scenario... :-)

A sales department has a BOSS and 16 STAFF

Objectives:

  • BOSS wants sales update every 1 day.
  • STAFF should MAXIMISE time outside of office.
Conditions:
  • Staff updates can be done inside the office only.
  • No way to contact STAFF once they are outside of office.
  • The BOSS and staff do not use watches. They only have timer/stopwatch (95% accuracy) thus statement "Update me at 3.30pm" cannot be used, but "Update me 30 minutes from now" is acceptable and the timing may be off by 5%.
  • Only 1 party (BOSS or STAFF) talk at any given time.
  • The updating only takes 2 minutes!
  • BOSS and STAFF works 24-hours per day.
Problem:

Find the most effective way (scheduling or otherwise) to get sales update on time and maximise STAFF time doing sales.

Thursday, July 9, 2009

Update: Cytron UIC00A Limitations

Further to my earlier blog that I was having problem to program PIC16F88 when MCLR is disabled and using internal clock as system clock, I just come across the following note added to the (new?) UIC00A User Manual from Cytron. Please take note of the limitations. BTW, the PIC is not spoiled.

RFM12B+PIC: Let's sleep... separately....


As typically done, to conserve power, electronic devices are put into a 'sleep' mode. For the RFM+PIC setup I had mentioned previously, the same method is employed. The PIC commands the RFM to go into sleep mode but preprogrammed the RFM to wake up in about 5s... very very short nap... after the RFM is commanded to sleep, PIC commanded itself to sleep indefinitely until awaken by something...

After the 5s nap, RFM will wake up (5% accuracy) and will pull the nIRQ line low. The nIRQ line is connected to one of PIC 'interrupt-on-change' pin. The change in voltage level wakes up the PIC and it will continue to execute exactly where it falls asleep.

Wednesday, July 8, 2009

RFM Slave Testing Units


In order to test RF module to module communications, I needed simple boards that could easily be made and programmed. Also, considering the future use for the module, I needed to find a suitable PIC microcontroller to do the job... Final selection was PIC16F690... it has all the bells and whistles, seemed to be as powerful as PIC16F88, but surprisingly 75% cheaper. Not sure if this is another Farnell incorrect pricing but I've gotten myself a tube of 22... :-)

Initial test has been completed, after the addition of more white hairs to my head. The module could send and receive packets correctly. I'm now focusing on how to minimise power consumption as we wanted the module/PIC to run for about 6-months with a simple AA (or AAA) batteries. Once that is solved, I'll move on to developing suitable protocol for master/slave monitoring requirement.

Wednesday, June 24, 2009

RF Transceiver Module...

As mentioned by 9W2DTR, the RF transceiver modules we ordered have arrived. It's a 433MHz module capable of max speed of around 115 kbps, tx power of 7dBm and SPI interface.

Since I'll be doing my development on a prototyping board, I needed a way to mount the module. The module's headers are 0.5mm, 2.0mm pitch whereas a standard prototyping boards are 0.1" pitch. A quick clicking on Eagle, and a few minutes later, the adaptor was born. Photo above shows the RF module mounted onto the prototyping adapter and it is sitting on top of the Futurlec PIC18F4550 development board. The 0.1" headers are reverse mounted on the PCB, i.e., the header protrude on the solder side instead of the component side. The loose module and adapter PCB are infront of the mounted module.

Photo below shows how the module looks once mounted to the prototyping board. There are still two (2) holes on either side of the headers to allow for jumper wires.

Tuesday, June 23, 2009

High voltage and high current equal to...

some fun...

After my capacitor charger worked as intended, I decided to have some fun with some solder lead and aluminum foil... here's a video of what happened to an ordinary aluminum foil when subjected to the charged capacitor... the 5mm strip instantaneously melted with beautiful spark... too bad it was too fast for my normal camcorder...

High voltage and high current are very dangerous... goes without saying... extreme caution is mandatory...

video

Wednesday, June 17, 2009

This is weird, but interesting!

fi yuo cna raed tihs, yuo hvae a sgtrane mnid too

Cna yuo raed tihs? Olny 55 plepoe out of 100 can.

i cdnuolt blveiee taht I cluod aulaclty uesdnatnrd waht I was rdanieg. The phaonmneal pweor of the hmuan mnid, aoccdrnig to a rscheearch at Cmabrigde Uinervtisy, it dseno't mtaetr in waht oerdr the ltteres in a wrod are, the olny iproamtnt tihng is taht the frsit and lsat ltteer be in the rghit pclae. The rset can be a taotl mses and you can sitll raed it whotuit a pboerlm. Tihs is bcuseae the huamn mnid deos not raed ervey lteter by istlef, but the wrod as a wlohe. Azanmig huh? yaeh and I awlyas tghuhot slpeling was ipmorantt!

Eagle Training Session - Confirmed Date


Further to the earlier blog on training/familiarization on Cadsoft Eagle, the followings are the update:

Venue: Jalan Klang Lama, Kuala Lumpur
Date: 4th July 2009 - 9.30am to 4.30pm
Participants: 9W2DTR, 9W2BON (+4 SWLs)
Notes: Participants should bring own notebook for hands-on session. You may wish to download and review this tutorial prior to session.

Any others, please let me know early so that we can make proper arrangement.

Tuesday, June 16, 2009

MilliOhm DVM Adapter


My recent works with SMPS entails winding of coils and, sometimes, current sense resistor which normally is very low in value. Decided to make the above adapter to measure low resistance which cannot be done using standard DVM. Yet to make it but will update on the usability later. Would be helpful also in tracing for PCB or winding shorts, etc...

2009.06.18 Update: The adapter worked as expected. The only issue is that the current limit resistors need to be 'adjusted' based on the LM317 used. LM317 reference voltage is guaranteed to be between 1.2V to 1.3V. If the resistors are calculated based on 1.25V, maximum possible error is around 4%. It's best to tune the resistor using a digital ammeter. Also note that circuit also measure probes resistance. As such, you need to deduct the voltage drop when the probes are shorted in order to get the actual resistance... If you set the current to 10mA then resistance is 1 milliOhm per 1 milliVolt.

Maybe I program a PIC for that and LED displays later... :-)