3 days ago •
RAMPS: What Is It and What's It For?
RepRap Arduino Mega Polulu Shield, or RAMPS, is a board that serves as the interface between the Arduino Mega — the controller computer — and the electronic devices on a RepRap 3D printer. The computer extracts information from files containing data about the object you want to print and translates it into digital events, like supplying a voltage to a specific pin.
It takes many, many such pins turning on and off to tell a printer what to do. Unfortunately, the Mega doesn’t have enough power to actually operate the printer’s hardware.
That’s where the RAMPS board comes in. It organizes and amplifies the information coming from the Mega so that they’re properly directed down the correct channels.
For example, if the hot end carriage needs to move one step to the left, the RAMPs board routes the signals from the Mega to the X-axis stepper motor via the appropriate pins and wires.
RAMPS 1.4 arose from years of development by the RepRap project. It satisfied the need for a single controller board that used the Arduino Mega and Pololu stepper drivers to manage all the functions of a 3D printer.
In the spirit of RepRap, it was originally designed to allow home production. Soon, it became too sophisticated and the design switched to favor commercial boards.
The basic layout of the board started with RAMPS 1.2 and has continued to (at least) 1.7. Nevertheless, the most popular version has remained 1.4 (with thru-holes or surface mount components). This board has been widely copied and can be obtained and assembled for under $10 from Asian manufacturers.
The RAMPS 1.4 comes with all the necessary components to run most 3D printers:
1. Sockets for 5 stepper drivers:
The stepper drivers are the common Pololu drivers that are available from many sources. Because they are detachable components, should one cease to function, it can easily be replaced by pulling it out and replacing it with a new driver. Three of the stepper drivers are designated for the X, Y, and Z axes of the printer, while two are designated for extruders. The Z-axis connector allows two stepper motors to be driven synchronously. Each stepper driver can be configured to move its motor 1, 1/2, 1/4, 1/8, or 1/16 steps per pulse.
2. Screw terminals for 3 heaters:
These are driven by MOSFETs and control the amount of power supplied to a device (and therefore the amount of heat produced). Typically, one driver will supply the hot end, one will supply the bed heater, and one will control a fan, which cools the plastic once it is extruded. The fan driver can also be used as a second hot end driver for dual-extrusion systems.
3. Sockets for 3 thermistors:
Thermistors measure the temperature of the devices connected to the heaters. The computer controller can use this information to monitor and control device temperatures.
4. Sockets for 6 end stops:
The RAMPS board supplies enough end stop control to allow a 3D printer to detect motion at both extremes of the X, Y, and Z axes (left-right, front-back, up-down) to limit the range over which a stepper motor can move the printer parts along any axis. The end stops can be either mechanical or optical.
5. Option for SD card:
The RAMPS board allows you to attach an SD card reader so that you can read printable files straight from the SD card instead of connecting to a computer.
6. Connections for display:
Two 10-pin ribbon connectors allow for the addition of a display unit.
7. Power supply screw terminals:
These include screw terminals for two 12-V connections, one for the bed heater and one for everything else. The power inputs are fused to prevent damage.
8. Lots of other add-ons:
Five additional sockets...Read more »
4 days ago •
What is rotary encoder?
Have you ever come across Rotary encoder? Do you know what it does? Here is some information that help you to gain knowledge about it.
Rotary encoders are used in everyday machinery. The word rotary means rotational motion. A rotary encoder is a type of position sensor which is used for determining the angular position of a rotating shaft. It generates an electrical signal, either analog or digital, according to the rotational movement.
There are two main types of rotary encoders:
Magnetic rotary encoders:
It can be used for speed and position feedback. These sensors are more robust than other technologies and they are often used in harsh-duty applications. Some magnetic encoders can provide absolute position feedback storing the position information even after power is shut off and turned back on.
Optical rotary encoders:
This encoders advance the rotary world. If you were to disassemble one, you would find an LED light source, code disks, a light detector, and a signal processor. Optical rotary sensors are more technically advanced than magnetic rotary sensors. When the shaft spins, a disk within the encoder also spins. The disk has multiple slots corresponding to the resolution. These slots rotate, interrupting the LED light beam. The light exposure to the light detector begins to pulse with the rotation and sends a signal to the processor. This signal is conditioned and then output to the system to indicate rotation.
Incremental rotary encoders:
This are a simpler device to understand as they are more basic in operation. The rotation of the device creates a pulse of two square waves corresponding to the rotation. These pulses are out of phase to each other by 90 degrees, which allows for not only frequency pulse output signals, but also allows the interface devices to detect direction from the phase relationship of the two pulses.
Absolute rotary encoders:
It has multiple detectors with an encoded disk that has multiple unique tracks. The output signal can consist of various types of outputs such as parallel coding, or serial interfaces like EtherNet/IP, PROFIBUS or PROFINET, J1939, as well as other output types. Optical absolute sensors have more than one gear. The gears allow the absolute encoder to track the rotational position over many rotations of the shaft, and the processing of the disk count allows the total number of shaft turns to be calculated and maintained. This gives you not only direction and position, but it also can be used in applications that require the distance or location to be monitored
How Rotary Encoder Works?
Let’s take a closer look at the encoder and see its working principle. Here’s how the square wave pulses are generated: The encoder has a disk with evenly spaced contact zones that are connected to the common pin C and two other separate contact pins A and B, as illustrated below.
When the disk will start rotating step by step, the pins A and B will start making contact with the common pin and the two square wave output signals will be generated accordingly.
Any of the two outputs can be used for determining the rotated position if we just count the pulses of the signal. However, if we want to determine the rotation direction as well, we need to consider both signals at the same time.
We can notice that the two output signals are displaced at 90 degrees out of phase from each other. If the encoder is rotating clockwise the output A will be ahead of output...Read more »
7 days ago •
Hey Guys!! Do you want to program nodemcu esp8266? Need a help to do it? I am here to help you out.
You can start by using :
What is nodemcu esp8266?
NodeMCU is an open-source firmware and development kit that helps you to prototype or build IoT products. It includes firmware that runs on the ESP8266 Wi-Fi SoC from Espressif Systems, and hardware which is based on the ESP-12 module. It is loaded with an open-source, Lua-based firmware.
It’s perfect for IoT Applications, and other wireless connectivity applications. This chip has a great deal in common with the Arduino – they’re both microcontroller-equipped prototyping boards which can be programmed using the Arduino IDE. The ESP8266 is a more recent released than the Arduino, it also has stronger specifcations. It has a 32-bit RISC processor clocked at 80MHz, along with a generous RAM complement and support for up to 16 MB of external flash storage.
Pinout of nodemcu
- Operating voltage : 2.5 to 3.3 v
- Onboard 3.3v 600mA voltage regulation
- 800mA operating current
- 20 µA during sleep mode
- You can provide voltage upto 16.6v
- A 10 bit ADC channel
- PWM output
- UART interface
- SPI ,I2C ,I2S interface : to connect all sort of sensors and devices
- I2S: to add sound to your project.
- On Board Switches and LED Indicator
For detail information about it click here
Then Lets move toward programming the nodemcu
How to program nodemcu esp8266?
Basically, NodeMCU is firmware based on Lua script. One of the best way to program NodeMCU with a well-known IDE called Arduino IDE. It makes things easy for Arduino developers than learning a new language and IDE for NodeMCU.
First thing you need to download Arduino IDE from the Arduino.cc platform and then install.
If you already have it, then it is great, the next thing to follow a path.
Open Arduino IDE
Select File and choose Preferences
Copy the above link
Paste in Additional Board Manager URLs
Like shown in the image:
Now close Preference window and go to Tools -> Board -> Boards Manager
In Board Manager, Scroll down to the end of the window
Now esp8266 by ESP8266 Community is available
Click that package and click install by selecting latest version
After installing ESP8266 board it will appear like this
After installation of the board is complete, open Tools -> Board-> NodeMCU 1.0 (ESP-12E Module).
Now your board installed completely on Arduino IDE
Now Your Arduino IDE is ready for NodeMCU
Now you can run multi-application code on NodeMCU and upload into NodeMCU, just Ensure that you have selected the correct board as shown in the below figure. Also, make sure that you have selected the appropriate COM port
I hope this article will find useful to you if you are a beginner in the IOT platform. For more information, you can Click Here
To explore ESP8266 Nodemcu Development Boards click Here