Photoplethysmography (PPG) sometimes called pulse oximetry is on of the easiest ways to get heart rate information. With a little more analyze and signal processing it is possible to extract even more information related to your heart condition like arrhythmia. But first lets focus on how to acquire PPG signals with the things you might have lying around. SteveQuinn have built a PPG device around Arduino Mega2560, 128×160 TFT LCD, and several passives. The measuring of PPG lies on blood perfusion to the dermis and subcutaneous tissue of the skin. Every cardiac cycle pumps blood to peripheral organs and this flow change can be measured with simple optical method – LED and photo diode. There are two ways of measuring PPG waveform – transmissive and reflective. Transmissive method seems to … Continue reading
You can use GPS data for many interesting projects and experiments. By analyzing logged data you can track the movement of the object, analyze you hiking route, RC plane model, weather baloon and other crazy stuff. Building such logger isn’t very complex task as it involves only standard modules and practically no soldering needs to be done. Almost all standard GPS modules support so called NMEA0183 data format – a short message which contains all data including position and time stamps. Once connected, GPS module automatically sends this data via serial interface. Arduino simply needs to capture it and store data to memory like SD card. In this project, data is stored in FAT32 (or FAT16) formatted SD card. Arduino accesses SD card through SD card V4.0 shield. This is … Continue reading
Laser engraving can be a great way of adding ornaments, labels and other graphics on wooden surfaces. Nobody wants to buy industrial engraver for hobby projects, and if you follow MichielD99 instructable, you can build one by yourself. He used 1.8W 445nm laser module which is enough to burn engravings on wooden surface, but not close to laser cutting. He build his own parts out of MDF boards. Electronics part consist of Arduino UNO which drives two stepper motors by using motor driver boards. Arduino by using pen source grbl-mster software library accepts Gcodes to drive the laser position. Images can be generated with software like inkscape which supports the extensions provided by himself. He tried to keep make all system free and accessible for everyone , so he used … Continue reading
Inertial measurement units (IMU) are commonly used where position, motion information must be processed. It is commonly 9 degrees of freedom (DOF) modules used that include LSM303 3 axis accelerometer and 3 axis magnetometer, ITG-3200 3 axis gyro. These are considered enough for precisely calculating position of board carrying all sensors. Amandaghassaei was working on project where orientation information was needed. So instead of purchasing available board, he built one which saved a bit of money, but mos importantly had all he needed. He included Atmega328p microcontroller which reads all sensor data and then can send it through I serial interface. He made 6 pin header to accept standard FTDI interface module. PCB was fabricated by using milling machine. Milling and soldering was a bit challenging since footprints of both … Continue reading
Programming PIC microcontrollers using Arduino code style isn’t something new. We are already familiar with ChipKit development boards from Digilent and their Arduino like development environment called mpide. Tom Kibalo suggests using MPLAB IDE to develop and use Arduino code for PIC32 microcontrollers. He has been developing Arduino library code for PIC32. Most agree that Arduino IDE environment sucks for making more serious projects, so different options are always welcome. For instance by using MPLAB X IDE you can be way more productive with all tools it provides. Arduino library for PIC provides most of Arduino specific functions and there fore most of Arduino code can be executed on PIC same way using simple wrapper code.
IF you have used any of the microcontroller, you must have gone through the pain of limited DAC resolution which at some point of time must have forced you to use an external DAC, which is a little complicated to code. You can obviously extend the range of the DAC by using a sigma-delta converter on the software side but it can be a bit slowly. To extend the DAC, a LTC1665 8-bit 8-channel DAC and a 8-bit 6-channel digital potentiometer with a nominal resistance of 10K is used. Since the current flowing through the potentiometer is in the sub-µA range, a precision rail-to-rail opamp (AD8603) is added as a voltage follower to ensure the accuracy of the voltage divider. The resolution is extended by using two DAC with a … Continue reading
Normally Arduino boards are reset by using additional DTR line of serial interface. This becomes a problem when USB-UART adapter doesn’t support DDR line. And you probably read many cases were one or another particular cable won’t work for programming, but can be used for simple serial data transfers. Ralph thought that there should be another solution that would allow using any serial cable for programming. He thought that TXD and RXD lines are always available since they are used for data receive and transmit. So why not to use one of those to reset microcontroller. With three additional discretes he created a simple circuit that would stand between RXD data line and RST pin. This is simply an RC circuit that would discharge cap during some time. So when … Continue reading