Share this

Design and Implementation of a Multi-Network Intelligent Remote Control System

2026-04-06 06:39:24 · · #1
Abstract: This paper introduces the design concept of a multi-network intelligent remote control system based on the AT89C52 microcontroller, the MT8870 dual-tone multi-frequency decoding integrated circuit, the ISD4003 voice recording and playback integrated circuit, and a personal computer. The system utilizes existing telecommunications network terminals or internet network terminals for remote control. The system principle and software design method are presented. Keywords: Remote control, dual-tone multi-frequency decoding, computer control, network communication 1 Multi-network Intelligent Remote Control System Remote control technology is a technique that uses certain means to control an object at a certain distance. Common methods include radio remote control, wired remote control, infrared remote control, and ultrasonic remote control. Multi-network remote control is a new type of intelligent control technology. Compared with conventional remote control methods, it has advantages such as not requiring dedicated wiring, not occupying radio frequency resources, and avoiding electromagnetic pollution. Furthermore, due to the interconnectedness of telecommunications lines and the global reach of the internet, existing network resources can be fully utilized for intelligent remote control across provinces, cities, and even countries with unlimited distances. While some researchers have explored multi-network remote control, it remains largely confined to the laboratory stage and is still some distance from practical application, especially in daily life. It does not fully demonstrate the full-duplex communication characteristics of network remote control. This paper makes significant improvements based on this point. The method uses a microcontroller for intelligent control and utilizes different voice prompts and computer software to provide prompts for different operations and feedback on the status information of the controlled party, thereby achieving a user-friendly human-machine interface. This allows the operator to understand the information of the controlled party in real time, ultimately enabling the product to reach an interactive and intelligent level. This system uses CCITT and some Chinese standard programmable signaling (DTMF dual-tone multi-frequency signals, ringing signals, and Internet TCP/IP communication standards, etc.) as the system control commands and data transmission standards, thus providing a good foundation for future productization. 2. Overall Design Scheme The main control part (i.e., the lower-level machine working part) of the multi-network intelligent remote control is composed of a microcontroller, mainly performing information processing; such as receiving external operation commands to form various control signals, completing the recording of various information and signal detection, and providing an interface between the microcontroller and the telephone line and computer for the identification control circuit. It also includes circuits for ring current and on/off detection, on/off control, dual-tone DTMF identification, serial communication port control circuit, and voice prompts. In addition, there are upper computer program development and network communication program development (i.e., the Internet communication part of the upper computer's operation). Figure 1 shows its system principle block diagram. The voice prompt circuit in this system is controlled by a microcontroller and can generate corresponding prompt voices. These can be fed back to the telephone line through a feedback circuit, enabling the operator to interactively operate the appliance, obtain relevant information in real time, and provide a user-friendly operating interface (for telephone network users). The system can connect to the Internet via a serial communication port and then connect to the upper computer. The network control program of the upper computer also includes voice prompts and has a more user-friendly control interface for convenient operation (for Internet users). Each interface circuit of this system (ring detection, simulated on/off call, voice prompts, dual-tone decoding, etc.) has been tested online in actual exchanges and is highly practical. In addition, this system has many functions that can be added. Since this device is connected in parallel to both ends of the telephone, it will not affect the normal use of the telephone. When a user dials the telephone number connected to this device from a telephone in another location, a ringing signal can be sent to the telephone through the local exchange. If the device detects three rings (i.e., no answer after three rings), it automatically picks up the phone, enters the control environment, and exits the system after the user completes the operation according to voice prompts. Users can also remotely control the system by logging into the target host server via the internet. This system uses Visual C++ programming to implement host computer control and internet remote control. It can expand existing telephone functions, with the public management section including call continuation function and visitor voicemail function (automatically recording time and date); while the private management section includes listening to visitor voicemail, controlling electrical appliances, and querying the working status of electrical appliances. 3 Design and Practice The circuit designed in this system mainly includes a voice recording and playback circuit, a dual-tone audio decoding circuit, a ring current detection circuit, a CPU circuit, a serial communication circuit, and a relay control circuit. 3.1 Ring Current Detection Unit Circuit When a user is called, the program-controlled telephone exchange sends out a ring current signal. The ringing signal is a 25±3V sine wave with a ringing distortion of no more than 10% and an effective voltage value of 90±15V. The ringing cycle is 5 seconds, meaning it's 1 second on and 4 seconds off. Because the ringing signal voltage is relatively high, it should be stepped down before being input to the optocoupler for isolation and conversion. Therefore, the optocoupler outputs intermittent pulses, which can be directly output to the microcontroller's counter input port to complete the entire ring tone detection and counting process. The telephone line signal is blocked by a 0.47μF capacitor and attenuated by a 5.1kΩ resistor before being applied to the optocoupler's LED terminal. The parallel inverter diode protects the LED from damage due to excessive reverse voltage. Through experimentation, a 50kΩ resistor was determined to effectively pull up the optocoupler pin voltage. 3.2 Dual-Tone Decoding Unit Circuit The dual-tone decoding circuit consists of the dedicated chip MT8870. Figure 2 shows its external circuit. The decoding result is provided to the CPU's P1.0 to P1.3 ports via the data bus. The interrupt request signal generated after decoding can be interrupted through T0 (forming an incrementing counter) to tell the CPU that the conversion is complete and data is waiting to be read. The read signal is a four-bit binary code, and the correspondence between the code value and the telephone keypad is shown in Table 1. Table 1 Correspondence between code value and telephone keypad [table=98%][tr][td=1,1,14%]FLOW[/td][td=1,1,14%]FHIGH[/td][td=1,1,14%]DIGIT[/td][td=1,1,14%]D3[/td][td=1,1,14%]D2[/td][td=1,1,15%]D1[/td][t d=1,1,15%]D0[/td][/tr][tr][td=1,1,14%]697[/td][td=1,1,14%]1209[/td][td=1,1, 14%]1[/td][td=1,1,14%]0[/td][td=1,1,14%]0[/td][td=1,1,15%]0[/td][td=1,1,15%] 1[/td][/tr][tr][td=1,1,14%]697[/td][td=1,1,14%]1336[/td][td=1,1,14%]2[/td][ td=1,1,14%]0[/td][td=1,1,14%]0[/td][td=1,1,15%]1[/td][td=1,1,15%]0[/td][/tr] [tr][td=1,1,14%]697[/td][td=1,1,14%]1477[/td][td=1,1,14%]3[/td][td=1,1,14%]0 [/td][td=1,1,14%]0[/td][td=1,1,15%]1[/td][td=1,1,15%]1[/td][/tr][tr][td=1,1, 14%]770[/td][td=1,1,14%]1209[/td][td=1,1,14%]4[/td][td=1,1,14%]0[/td][td=1, 1,14%]1[/td][td=1,1,15%]0[/td][td=1,1,15%]0[/td][/tr][tr][td=1,1,14%]770[/td ][td=1,1,14%]1336[/td][td=1,1,14%]5[/td][td=1,1,14%]0[/td][td=1,1,14%]1[/td] [td=1,1,15%]0[/td][td=1,1,15%]1[/td][/tr][tr][td=1,1,14%]770[/td][td=1,1,14% ]1477[/td][td=1,1,14%]6[/td][td=1,1,14%]0[/td][td=1,1,14%]1[/td][td=1,1,15% ]11[/td][td=1,1,15%]0[/td][/tr][tr][td=1,1,14%]852[/td][td=1,1,14%]1209[/td] [td=1,1,14%]7[/td][td=1,1,14%]0[/td][td=1,1,14%]1[/td][td=1,1,15%]1[/td][td= 1,1,15%]1[/td][/tr][tr][td=1,1,14%]852[/td][td=1,1,14%]1336[/td][td=1,1,14%] 8[/td][td=1,1,14%]1[/td][td=1,1,14%]0[/td][td=1,1,15%]0[/td][td=1,1,15%]0[/ td][/tr][tr][td=1,1,14%]852[/td][td=1,1,14%]1477[/td][td=1,1,14%]9[/td][td=1 ,1,14%]1[/td][td=1,1,14%]0[/td][td=1,1,15%]0[/td][td=1,1,15%]1[/td][/tr][tr ][td=1,1,14%]941[/td][td=1,1,14%]1336[/td][td=1,1,14%]0[/td][td=1,1,14%]1[/t d][td=1,1,14%]0[/td][td=1,1,15%]1[/td][td=1,1,15%]0[/td][/tr][tr][td=1,1,14 %]941[/td][td=1,1,14%]1209[/td][td=1,1,14%]*[/td][td=1,1,14%]1[/td][td=1,1,1 4%]0[/td][td=1,1,15%]1[/td][td=1,1,15%]1[/td][/tr][tr][td=1,1,14%]941[/td][t d=1,1,14%]1477[/td][td=1,1,14%]#[/td][td=1,1,14%]1[/td][td=1,1,14%]1[/td][td =1,1,15%]0[/td][td=1,1,15%]0[/td][/tr][tr][td=1,1,14%]697[/td][td=1,1,14%]1 633[/td][td=1,1,14%]A[/td][td=1,1,14%]1[/td][td=1,1,14%]1[/td][td=1,1,15%]0[ /td][td=1,1,15%]1[/td][/tr][tr][td=1,1,14%]770[/td][td=1,1,14%]1633[/td][td= 1,1,14%]B[/td][td=1,1,14%]1[/td][td=1,1,14%]1[/td][td=1,1,15%]1[/td][td=1,1, 15%]0[/td][/tr][tr][td=1,1,14%]852[/td][td=1,1,14%]1633[/td][td=1,1,14%]C[/ td][td=1,1,14%]1[/td][td=1,1,14%]1[/td][td=1,1,15%]1[/td][td=1,1,15%]1[/td][ /tr][tr][td=1,1,14%]941[/td][td=1,1,14%]1633[/td][td=1,1,14%]D[/td][td=1,1,14%]0[/td][td=1,1,14%]0[/td][td=1,1,15%]0[/td][td=1,1,15%]0[/td][/tr][/table] After the external signal is stepped down and shaped by the bridge circuit composed of diodes, it can be blocked by a 0.1μF capacitor and attenuated by a 100kΩ resistor, and then it can be fed into the input terminal of the dual-tone audio decoder chip MT8870. 3.3 Voice Circuit This system uses the ISD4003 single-chip voice recording and playback integrated circuit from ISO Corporation of the United States as the core part of the voice prompt circuit. The ISD4003 uses E2PROM memory, which can permanently store information and can store zero-function data. This memory also employs D/A direct analog signal storage technology, thus better preserving the effective components of voice information and improving the clarity of recorded and played audio. The ISD4003 can store up to 8 minutes of voice recordings and can achieve segmented voice recording and playback. Each segment has a starting address, and this starting address and its control signals can be given by the microcontroller through its SPI communication port. The peripheral circuit of the ISD4003 is very simple, requiring only a few resistors and capacitors. The system's voice interaction interface unit circuit based on the ISD4003 is shown in Figure 3. 3.4 Serial Communication Circuit and CPU Unit The serial communication circuit in this system consists of a dedicated MAX202, mainly used for serial communication between the system and the PC. The CPU circuit uses an AT89C52 as the central processing unit, along with simple peripheral circuits. A 22μF capacitor and a 1kΩ resistor are used to construct the system's automatic power-on reset circuit. An 11.0592MHz crystal oscillator and two 30pF capacitors form the system's clock reference circuit. Since the CPU has internal memory, no memory expansion is needed. 4. Software Design 4.1 Lower-level machine communication software design The receive() function enables data reception between the lower-level machine and the upper-level machine, while the send() function is used to transmit data between the lower-level machine and the upper-level machine. The bote() function initializes the serial communication port and generates a 9600 baud rate. 4.2 Dual-tone audio recognition software design The dual-tone audio signal is detected by the dual-tone audio decoding unit circuit. When a signal is decoded and output to the data bus, the system generates an interrupt request and sends it to the T0 counter to generate an interrupt. Simultaneously, the CPU executes the T0 interrupt service routine. The T0 interrupt service routine consists of the firstdetect() and seconddetect() functions. The firstdetect() function is used to read and identify the first-level menu values ​​of the bus (P1.0~P1.3); the seconddetect() function is used to read and identify the second-level menu values ​​of the bus data. Since this system currently only has two menu levels, the second level is also used to trigger control commands. 4.3 Communication Software Design for the Voice Control Section The following SPI communication program is written in 16-bit C51 language command format. When using it, correctly specifying the high 8 bits and low 8 bits of the address will transmit control information (contained in the high 5 bits of the high 8 bits of the address) through the ISD4003's SPI port. Detailed SPI interface instructions can be found in the ISD4003 series chip datasheet. Part of the communication program for the voice control section is given below. Void SPI_COM(uchar address-high,uchar address-low {uchar i,Bit-temp; SCLK=0; SS=0; /*chip selected signal*/ for(i=0;i<8;i++) /*write low eight bits address*/ {SCLK=0; Bit-temp=address-low & 0x01; /*0x01 equals to 0000 0001B; get the first bit from the right in this way */ if(Bit-temp==0) MOSI=0; /*if it doesn't work, some nops may be needed */ Else MOSI=1; /*if it doesn't work, some nops be needed */ SCLK=1; Address-low=address-low>>1; } for(i=0;i<8;i++) /*write high eight bits address*/ {SCLK=0; Bit-temp = address-high & 0x01; /* 0x01 equals 0000 0001B; get the first bit from the right in this way */ if (Bit-temp == 0) MOSI = 0; /* if it doesn't work, some nops may be needed */ Else MOSI = 1; /* if it doesn't work, some nops may be needed */ SCLK = 1; address-high = address-high >> 1; } SS = 1; 4.4 Communication Software Equipment and Implementation The communication software mainly consists of Internet network communication software and local upper and lower computer communication software. Internet network communication mainly completes network control. This part mainly consists of client software and server software. The network communication software can be developed in the Windows environment using Visual C++. The upper computer communication software is used to complete the communication between the server (microcomputer) and the lower computer. The structural principle of this network communication is shown in Figure 4. The network communication software can be designed based on Visual C++. It can usually be composed of client software and server software. The server, acting as both the host computer and the system's central controller, is typically connected via a serial communication port. Since the data transmission between the host and slave computers in this system is relatively small, a dedicated database is not used. The acquired information is only for control purposes and does not need to be stored in files. The system defines the following protocol for communication between the host and slave computers: the host computer sends the letter 'A' to the slave computer to indicate that the air conditioner is on, and sends 'a' to indicate that the air conditioner is off; the slave computer responds in the same way to the host computer. Sending 'B' indicates that the water heater is on, and sending 'b' indicates that the water heater is off; sending 'C' indicates that the rice cooker is on, and sending 'c' indicates that the rice cooker is off. The client software serves as the terminal software for remote Internet network control. System communication should be in text format, with commands consisting of text strings. For example, when the water heater button is pressed, the client software sends the command string "Water Heater Is Opened" to the server software, and the server software displays: "CMD from client: Water Heater Is..." "Opened" and internally interprets the string command, that is, sends 'B' to the lower-level machine. When the central controller turns on the water heater through the telephone remote control circuit, the lower-level machine will send an 'A' to the upper-level machine (server) to indicate that the water heater has been turned on; when the water heater is turned off by telephone remote control, the lower-level machine will send an 'a' to the upper-level machine (server) to indicate that the air conditioner has been turned off. At the same time, the client software will have corresponding prompt voice to indicate the status of the home appliances, thereby realizing the information interaction between the two control methods. 5 System Online Debugging The equipment used for online debugging of this system is as follows: (1) One MCS-51 simulator; (2) One HA6138 (18) P/T dual-tone multi-frequency telephone; (3) Two microcomputers; (4) One oscilloscope; (5) One digital multimeter; This system automatically resets upon power-up. It can be powered by a 5V battery, but can also be powered by a telephone line. The system requires a telephone for its auxiliary functions, namely voicemail and voice recording. The telephone handset must be connected to the system's voice recording input, and the microphone to the system's voice output. Actual products may integrate telephone functionality. When using network functionality, the user should connect the system to a networked computer at home via a serial communication port, then run the system's server-side software and specify the server computer's port number. This allows users to access the home server and send control messages from a distance using client software. When users control the system via telephone network, it operates as follows: It detects three rings; if no one answers, it automatically picks up the phone and plays a voice prompt: "This is [Name of Home Central Control System]. Please press the button to select a function: 1. Continue calling; 2. Voice message; 3. Remote control…". Users select a function according to the voice prompts and finally press the "#" key to end the control process and hang up. Notably, when accessing the remote control function, a four-digit password is required to complete control. Once the password is correct, a voice prompt will appear: "Please select: 1. Turn on the air conditioner; 2. Turn off the air conditioner; 3. Turn on the water heater; 4. Turn off the water heater; 5. Turn on the rice cooker; 6. Turn off the rice cooker…". When users control the system via the Internet, the client software interface is very user-friendly. Users can connect to their home server and then use the mouse to access the corresponding functions. Since both the client and server software require user authorization passwords, the system is very secure. Conclusion The system's operation on actual telephone and Internet networks demonstrates that it has met all the initial design requirements. It is believed that it will be widely used in future information appliances, smart communities, and industrial remote control. To highlight the system's multi-network remote control information feedback function, this system adopts a solution that expands existing telephone functions, and the integrated circuits and other components used are selected for their high cost-effectiveness. Thus, by connecting sensors to each terminal, real-time environmental monitoring can be achieved; simultaneously, the system's automatic dialing circuit can transfer pre-set information to the owner's mobile phone or a specific telephone number, thereby achieving the purpose of timed reminders for the owner or home security alarms. Furthermore, this system can also be applied to remote automation control in industrial and mining enterprises.
Read next

CATDOLL CATDOLL 115CM Tina TPE

Height: 115cm Weight: 19.5kg Shoulder Width: 29cm Bust/Waist/Hip: 57/53/64cm Oral Depth: 3-5cm Vaginal Depth: 3-15cm An...

Articles 2026-02-22