Understanding and interfacing LDR – light dependent resistors

light dependent resistor

LDR (Light Dependent Resistor) is a simple, cheap electronic device. This is a resistor in which resistance varies depending on light intensity. You’ve probably seen typical LDR in some projects where light intensity must be considered. They can activate light switches and alarms, adjust display brightness, and more. Light-dependent resistors can be of different types. They vary in light-sensitive material used. Visible spectrum LDR is made using Cadmium Sulphide (CdS) or Cadmium Selenide (CdSe). This material is sensitive to the wavelength range from 400 – 850nm. For the near-infrared spectrum (1μm – 3μm), there are PbS or PbSe materials used. For the deeper infrared range (3μm – 1000μm), there are InSb and InAs.

Continue reading

Drive DC motor using Arduino motor shield

arduino motor shield with dc motor

This is a continuation of the previous post where we have tried to run a servo using an Arduino motor shield. This was a simple task to do with the Arduino Servo library. Today we will push things a bit forward and drive the DC motor using the same motor shield. This motor shield can run small DC motors that require less than 0.6A of current and operating voltage is less than 25V. In my drawer, I found a small 12V motor that will fit this demo. Before we begin programming, we need to connect the motor to the Board. We are going to use the M1 connector.: Since the motor requires a 12V power supply, we are going to use an external power supply. It can be connected to the External power screw terminal. Be sure to remove the jumper as well.

Continue reading

Testing Arduino motor shield with servo motor

Arduino motor shield

Recently I’ve got an Arduino motor shield. It is based on ladyada first mshield circuit. It uses two famous L293D quadruple half-H divers. It is a cheap and reliable shield to drive various motors. These can be two hobby servo motors, four bidirectional DC motors, or 2 (unipolar or bipolar) stepper motors. The load current is limited to L293D chips. The specification says that each channel can provide a constant 0.6A and peak 1.2A. There is also a thermal shutdown to prevent the circuit from damaging. Motors can be externally powered using a voltage range from 4.5V to 36V. Each motor control channel is pulled down with a resistor to disable any motor at power-up. In this post, we are going to try servo motor control. There are a couple of connectors on the motor shield where you can connect two servo motors using a standard 3 wire connector (GND, VCC, and PWM).

Continue reading

How to calibrate touch screen display on STM32 board

stm32_touch_screen_interface

Touch screen displays are a common choice in many microcontroller projects. Touch capability won’t take additional space – it sits on top of LCD to directly interact with objects you see on screen. To get this working, touch screen coordinates must match screen coordinates. So could be sure when you touch the point on screen you point where you want. The touch screen is an analog device. It is made of two flexible resistive sheets with a gap between them. When the screen is touched, a connection between sheets is made, and thus a measurement of voltage drop is taken. Normally resistive touch screen has a four-wire configuration. And normally, a specialized IC is used to take measurements and send data to MCU for processing. In our case, we are dealing with the ADS7843 touch screen controller, but in other systems, this works the pretty the same way. The fact is that the touch screen controller reads screen ADC values and passes them via the SPI interface. So all you get is raw ADC readings that are not lined up with LCD coordinates. As you know, LCD screens can be of different resolutions, different orientations, so data gathered from resistive…

Continue reading

Facts about Raspberry Pi that make it popular

Raspberry Pi model B

Is there anyone who didn’t hear about Raspberry Pi? It’s like the second thing after Arduino. And this is the result of the right idea at the right time. Many Linux boards around that don’t cost a fortune, but they didn’t make it to the masses. And mainly, they were used by advanced users who know Linux well enough. Raspberry Pi pros Raspberry Pi changed things pretty drastically. And there are several key factors why:

Continue reading

Fractal antenna technology

A Fractal receiver is a receiver that can be damaged up into lesser parts. Fractal means a part of, so in this scenario, they refer to a receiver that can have feelers added or aloof. By liability, the Fractal receiver is; next, a notion called the self-similarity to expect module. This typically means that you can detach or add in peer parts. If you ever took a lobby in Fractal Geometry, you’d learn the mathematical reasoning behind this. The Mandelbrot Set governs the mathematics behind this stunt. Benoit Mandelbrot is the father of fresh day Fractal Geometry. These antennas activate by elate out rare electromagnetic signals that face a specific zone or size depending on how many Fractals the receiver has. Fractal Antennas aren’t outsized or awkward in any way. They are tiny and have legal world applications in cellular phones or microwave ovens and another small electronic method. This receiver is rare in that it can activate at countless different frequencies at the same time.

Continue reading

Basic touch screen routines up and running

STm32 touch screen

STM32103ZET6 prototyping board comes with LCD having touch screen capability. It is a great way to interact with the device. Practically speaking Touch screen is a resistive film that can be accessed as a regular potentiometer which value depends on the touchpoint. Depending on voltage drop, it is possible to calculate the coordinates. There is a touch screen controller that takes most of the hard work – it has an internal ADC that measures the voltage and sends a value to the microcontroller using one of the selected interfaces (I2C or SPI). There is a typical ADS7843 controller used in the board, which talks to the microcontroller using SPI. After playing around, I’ve put a messy code that reads touch screen coordinates. It is a glued code from various sources, so it is only to fix some results. Currently, the code reads many values, then averages to get rid of most garbage, and then calculates screen matching coordinates. This is the trickiest part to do. You can do this empirically by reading min and max ADC values for each axis and then calculate coordinates using formulas:

Continue reading

Top Questions Regarding E-Signatures You Should Know

There are several top questions for a better understanding of e-signatures. These include the legality of e-signatures, the primary laws and regulations of e-signatures, the legality of handwritten signatures and e-signatures, and the integrity of e-signatures. Now, let’s talk about the legality of electronic signatures. E-signatures have already been made legal by the government. There are several points why e-signatures are used. The benefits of using electronic signatures include practicality and efficiency. In addition to that, it can also eliminate the use of papers. Electronic signatures are also important for the integrity of certain documents.

Continue reading

Reading serial data from chipKIT UNO32 using Python3 and pyserial

installing python3 - path variable

Python is great programming (scripting) language that is supported on all platforms. Embedded enthusiasts love it because of the variety of modules that connect things to the internet and other crazy stuff by writing only a few code lines. Today my interest was to read serial data using Python 3.3 and the pyserial module. Python 3.3 is still fresh, and there is a majority of modules that need to be ported from Python 2 to Python 3, but I hope soon they will here. The serial module seems to be working fine in Windows 7 x64, and I decided to share my experience. First of all download and install Python 3 (current release is Python 3.3) Just be sure to include “Add python.exe to Path” so you could run Python anywhere on your computer. We won’t go into details on how to set up this tool. It is pretty robust. After setup, python install is placed in C:\Python33. To test if things work OK open the command prompt and type python; you should see the python prompt:

Continue reading