Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

Recognizing skin cancer symptoms using model based imaging

When a quality skin model is constructed – recognizing skin cancer symptoms can be more comfortable as many factors indicate the threat of skin cancer. Of course, this can’t give 100% results, as there are many shortcomings connected with skin lesion variety and interpretation errors. But some guides may help. Three main factors can indicate the risk of skin cancer. Recognizing skin cancer symptoms can be based on them. They are: Melanin presence in the papillary dermis; The thickness of papillary dermis; Blood behaviour around the lesion and inside it. The first important factor is the melanin present in the dermis. This is the main factor in recognizing skin cancer symptoms. If melanin spread in the papillary dermis or even dermis, this is a significant probability of being skin cancer symptoms, but not always. Several subfactors in this issue, like melanin spreading figure, depth, and melanin density within this shape. If there are more irregularities in the spreading area, there are more risks. Another factor in recognizing skin cancer symptoms is papillary layer thickness. In not going into deep too much there can be said, that the thinner this layer, the more significant risk.

Continue reading

First LPC2148 ARM7 microcontroller test – led blink

home made LPC2148 development board

This is simply a led blinking routine using my development board. The compiler I used was WINARM. I like this compiler because it’s free, and adaptation is easy while the same functionality is in WINAVR. This simple test blinks pin 16 of port 0. This I used when I first got to know ARM microcontroller. Here is the main code: All project files and compiled hex file is in LPC2148.zip.

Continue reading

TWI (I2C) interface on AVR

Two-wire serial interfaces are included in the following AVR microcontroller families: ATmega8x, ATmega16x, ATmega163x, ATmega32x, ATmega323x, ATmega64x, and ATmega128x. TWI interface is a “Philips” standard I2C. Using the TWI interface, you can connect up to 128 devices using only two wires: clock (SCL) and data (SDA). Only two pull-up resistors on each line are needed for this interface to work properly. The I2C interface circuit is an open collector. This means if one of all devices has a low-level signal on a line, then it is ‘0’, and if all devices have a high impedance state, then the signal is considered to be great ‘1’—more details about TWI interface you can find on any ATmega datasheet. One of my examples Interfacing AD7416 digital temperature sensor you can find here: Analog Devices Digital temperature sensor AD7416

Continue reading

Using buttons and switches with AVR microcontrollers

In most designs, you might want to put buttons and switches to control your program flow. This is not very difficult to read the button state. You can connect the button between pin and ground with an internal pull-up enabled. Then when the button is pressed, the pin value will be 0 when released – 1. Of course, you can use an external pull-up resistor. In fact, all mechanical contacts have their shortcomings – they generate multiple micro connections that can confuse AVR. The Delay of this effect depends on the quality of buttons or switches and can vary from 10 to 100ms.

Continue reading

Control 7 segment LED displays with AVR

LED displays are nothing more than sets of Light Emitting Diodes. The difference is that they have different shapes to display specific information. So driving LED displays is the same as regular LEDs. This is a simple connection when there are enough microcontroller Pins. But if you want to connect more displays, you will need more microcontroller pins than it can give you. Then it would help if you made a more advanced circuit with dynamic control.

Continue reading

Drive LED or Opto-isolators with AVR

This might seem very simple to many of you, but I still get questions about simple microcontroller interfacing. So I will put a thread of notes about interfacing AVR microcontrollers to devices like LED’s, relays, I2C, etc. As you might know, Diodes require a pretty small current. This current depends on diode type and can be from 3mA up to 20mA and more. Working voltage is from 1.5 to 4V. One AVR pin can sink up to 20mA of current; it is convenient to connect the diode directly to it with a current limiting resistor. Never connect the diode to the pin without a resistor – you may damage your AVR as your current may exceed the 20mA limit!

Continue reading

K-Type Thermocouples reviewed

A thermocouple is a sensor that generates an electrical potential related to the temperature. The sensor’s operating principle is based on the fact that any electrical junction between two different metals generates an electrical potential that depends on the temperature and the metals used. The principle applies equally well if three metals are used. In that case, there are two junctions in series and the net potential results from the series addition of the two individual potentials. For example, if a copper iron junction is in series with an iron-tin junction, the net potential is the same as for a copper-tin junction. However, that is only true if both junctions are at the same temperature. The K-Type thermocouple is usually made of Chromel (+) and Alumel(-). The voltage generated from this sensor is 4mV/100°C. The max temperature that can thermocouple withstand is 1000°C without any damage.

Continue reading

Gauss-Zeidel optimization routines

This is the simplest optimization routine. Using this algorithm, optimization parameters are changed separately in each step. Only one parameter can be changed in one step while others are held as constants. Xk+1=Xk+ΔXk , k=0,1,2,… ΔXk step of parameter Xk. The parameter is changed until function growth is noticed, and then the next parameter follows, and so on. After the cycle with all parameters is completed, the step is changed to half its value and repeats. Optimal point searching ends when there is no function increase, and the last point is held as an optimal point. First function optimization example Its plot: Using the MATLAB script, we get the results below. In each picture, the start coordinates are different.

Continue reading

Impulse signal distortion in the transmission line

Today most electronic equipment consists of signal generators and processing units. These units are connected with transmission lines. These lines have a big influence on signal distortions. On these lines depends transmission lines stability. Let’s see how transmission lines affect transmitted signals. (G- signal generator; Za– output impedance; I- signal receiver Zb– input impedance; L- transmission line length; Z0– Line impedance. When line is tuned and without losses then input voltage: Ub(t) = ZbE(t-t)/(Za + Zb) E(t)- generators signal amplitude; t- signal delay in line. t =l/v ; l- line lenght; v- signal speed. If the line is not tuned up, then there are distortions in line because of reflections inline: If signal E(t) is step function: Then signal in line exit in discrete time moments will be: U(0) = p; U(t) = p*(1+pb) U(2t) = p*(1+pb+pa*pb) U(3t) = p*(1+pb+pa*pb+pa*pb^2); U(4t) = p*(1+pb+pa*pb+pa*pb^2+pa^2*pb^2); U(5t) = p*(1+pb+pa*pb+pa*pb^2+pa^2*pb^2+pa^2*pb^3) … where Depending on reflectance coefficients and their signs distortions can differentiate or integrate: A real model using MathCAD was implemented to see how the signal looks on exit depending on parameters. Below you see used algorithm structure used in modeling: Part 2: One of results using trapezoid signal: In exit we get distorted…

Continue reading