[Arduino] Sainsmart Hall Effect Sensor board

[ref from: http://bobselectronics.blogspot.com/2014/07/sainsmart-hall-effect-sensor-board.html]

 Sainsmart Hall Effect Sensor board

This is a very simple description of how this board works. I was unable to find this info on the internet nor was the company I bought the board from any help.
This is a very inexpensive pre-assembled hall effect sensor available on EBAY that provides both a digital and analog output that is easily incorporated into the Arduino as a RPM measurement tool.
There are 4 connections:  + is +5V, - is ground, AO is analog out and DO is digital out.
A 10K pull up resistor is needed between which ever output is used and +5V. This will keep the DO at high when no magnetic influence is detected. When a magnetic field is detected the DO pin will go low and this can be inputted  to one of the Arduino digital input pins. There are two red LEDs on the board. The lower left one is on when power is supplied to the board and the lower right is on when DO goes low. If the lower right is on with no magnetic field then the variable pot must be adjusted until it goes out.
The analog output varies from 0 to +2.5V.
There are several Arduino sketches for using a hall effect sensor available on the internet but they have poor low RPM accuracy and I made a few modifications that I will post when I have a little time. I use a Sainsmart LCD keypad shield on the Arduino and it displays the RPM as a self contained unit. 

Here is a link to a diagram of the Eagle layout:
https://drive.google.com/file/d/0BxCQZLsb0vTKQndodjFrUVJqRFU/edit?usp=sharing

[Arduino] Build error on Arduino Eclipse plugin

If you get the following error while building an ARduino UNO application on Eclipse:

"make all
Cannot run program "make": Launching failed

Error: Program "make" not found in PATH"

Then, you can fix it by including the makefile program path into environment variable PATH.

The fix can be as below:

Step1: if you have not had makefile on your computer yet, then you can install: MinGW_Toolchains.
    It can be downloaded from:
                    http://sourceforge.net/projects/mingw-w64/files/latest/download?source=files

Step2: Assuming that you had installed MinGW_Toolchains into drive C, now you can add the path: C:\MinGW_Toolchains\mingw64\bin into your PATH variable environment.

You can update this PATH variable environment via Eclipse as below:
From Eclipse: Window --> Preferences --> C/C++ --> Environment

Variable PATH will be there, then you can update the PATH similarly as following:



Scheduling algorithm

This is an implementation of ASAP scheduling algorithm, ALAP scheduling algorithm and LIST_L scheduling algorithm.

It is assumed that:
    + ALU will do the arithmetical operations: +, -, >,<, etc.
    + Multiplier: *
    + Divisor: /

LIST_L scheduling algorithm: (adjusted from the book: Synthesis and Optimizations of Digital Circuits by Giovanni De Micheli)


{

            Repeat until all vertices determined {

                        Determined the distance label between vertex Vi and sink;

             }



Repeat until all non-leaf vertices are scheduled: {

                        Repeat for each source type

                          {

                                      Determine ready vertices U;

                                      Determine unfinished vertices T;

                                      Select S Є U;

                                      Schedule S at clock cycle l;

                           }

                            l = l + 1;

            }                                           

            return (t);

}

Related Posts Plugin for WordPress, Blogger...