- Grand Piano Keys with ArduinoPosted 1 day ago
- Wireless Power TransferPosted 2 days ago
- Robot Punchers with ArduinoPosted 3 days ago
- A minimal 3D-printed scalePosted 5 days ago
- Expanding the pins of a microcontrollerPosted 1 week ago
- Let’s create a small level with a matrix displayPosted 1 week ago
- ChatGPT: Writing Code with Artificial IntelligencePosted 1 week ago
- Free Webinar: Arduino IoT Cloud and ESP32 DemoboardPosted 1 week ago
- Maker Faire Rome – The European edition and FAE Technology launch the contest “MY Maker PCBA: your electronics for a better planet”Posted 3 months ago
- Efficient and Compact Stereo Power Amplifier: Unleash High-Quality Audio with the PAM8610Posted 4 months ago
GSM localizer without GPS – Part 5
The circuit our localizer is based on consists only of a quad-band GSM/GPRS module interfaced with a a microchip microcontroller which, after initializing the I/Os and UARTs it has at its disposal, puts the main program in a loop waiting for some event, which could be the arrival of an SMS or someone pressing the button P1 (that is, the logical 1/0 transition of the RB1 line, internally equipped with a pull-up resistor). In the event that an SMS is received, the localizer distinguishes between a message that is setting up a configuration and one that is requesting information regarding the position.
Let us look more closely at the procedure that allows to find out the position, which is essentially the same in the case of manual requests as well as when pressing P1 (alarm or SOS): as soon as a request is received, the PIC orders the cellular module to connect to the Google Maps server in data mode (via GPRS, hence on the Internet) and to send a position request along with the cell ID to which Enfora is connected; now the localizer is ready to receive Internet-transmitted data on the RX channel of its own UART.
R1, R5: 4,7 kohm (0805)
R2: 10 kohm (0805)
R3, R4: 330 ohm (0805)
C1: 100 µF 6,3 VL tantalum (CASE-B)
C2, C3: 100 nF multilayer (0805)
C4, C5: 10 pF ceramic (0805)
C6, C7: 470 µF 6,3 VL tantalum (CASE-X)
U1: PIC18LF6722 (MF833)
LD1: red LED
LD2: green LED
Q1: 20 MHz quartz (12SMX)
SW1: Slide switch
P1: Microswitch 90° SMD
– CS connector 100 pin for GSM
– 8 pole connector 90° 1 mm
Once the localizer receives the data with conjectured position (latitude and longitude, approximate street or square location) and accuracy, it prepares an SMS and sends it to the number that requested it or to the one that is stored and associated with this particular alarm function. That is all: simple and functional. The cell phone is handled by the microcontroller by means of the RF1 line (through which it reads the RI, that is, the Ring Indicator used by the module to signal the arrival of a call), as well as RB4 line, which allows it to detect receipt of SMS messages. RC7/RX1 and RC6/TX1 are, respectively, the reception and transmission lines of the UART, which is used not only to handle the cell phone’s functions (except for reset and power), but also to read and send SMS messages. The power function is handled by the RA4 line, which relies on PWRCTL to turn GSM1 on and off and which is essentially used to start the cell phone after initialization, that is, to turn it off and on again in the event it should get stuck and the reset function should not be enough to set it back to normal. The reset function is handled by the PIC through the RC3 line, which relies on the T1 transistor, employed here as a static switch that effectively changes the module’s RST.
This compound unit (that is, the cell phone and microcontroller) is powered through the SW1 switch by a continuous 3.6-volt tension, applied to both + and – PWR, which can easily be obtained from a 1.2-V NiMh AAA rechargeable battery or from a 3.7-V Li-Ion battery. Notice how many filter condensers are placed along the power line.
They are needed to filter out disturbances produced by the input when the cell phone is transmitting –disturbances that would otherwise create enough power fluctuations to block the microcontroller.