The foregoing aspects and many of the accompanying advantages of this invention will become more readily appreciated as the same becomes better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
Please referring to
Next, the peripheral module set 30 includes a plurality of peripheral modules 301, 302, . . . , and 30n. In one embodiment, the peripheral module 301, 302, . . . , and 30n may include respective functional elements 3012, 3022, . . . and 30n2, and respective corresponding slave micro-controller 3011, 3021, . . . and 30n1 coupled each other. The slave micro-controllers 3011, 3021, . . . , and 30n1 are used as a communication interface between the SBC 10 and the corresponding functional elements 3012, 3022, . . . , and 30n2, execute the commands from the SBC 10, and ensure the correct execution of the corresponding functional elements 3012, 3022, . . . , and 30n2. Besides, each of peripheral modules 301, 302, . . . , and 30n further include a switch (not shown) used to identify the identification code of each peripheral module 301, 302, . . . , and 30n. Each switch exploits a plurality of bits to identify the identification code, and each bit may identify two identification codes, said, the amount of the identification code is 2n. The SBC 10 utilizes the identification code to identify the corresponding peripheral modules 301, 302, . . . , and 30n when the SBC 10 would like to command the peripheral module set 30. Understandable, more peripheral modules used, more bits of the switch is needed.
Furthermore, the transmission unit 20, which is both connected to the master micro-controller 104 of the SBC 10 and the slave micro-controllers 3011, 3021, . . . , and 30n1, may be a three-wire command bus including a data line, a clock line and an event line (not shown in the figure). In one embodiment, the data line and the clock line are used to transmit the commands from the master micro-controller 104 or to access data. The event line is used to send signals back to the master micro-controller 104. The event line allows the slave micro-controller 3011, 3021, . . . , and 30n1 of peripheral modules 301, 302, . . . , and 30n to automatically report the pre-defined events when the happen to the master micro-controller 104. An event signal may be sent to the SBC 10 through the event line of the transmission unit 20. In the meantime, the SBC 10 may accesses the data from the slave micro-controllers 3011, 3021, . . . , and 30n1 of the peripheral modules 301, 302, . . . , and 30n through the data line and the clock line of the transmission unit 20. Accordingly, the transmission unit 20 allows the master micro-controller 104 and slave micro-controllers 3011, 3021, . . . , and 30n1 to communication and a plurality of peripheral modules 301, 302, . . . , and 30n can be connected to the same bus with different module identification setting, and the master micro-controller 104 can save time in polling the slave micro-controllers 3011, 3021, . . . , and 30n1 and the system loading is reduced.
In this embodiment, the developing system of re-configurable modularized robot provides a product developer with software in the computer 1 to easily edit simply high-level language program. While the program compiling is completed, a command may be downloaded from the computer 1 to the master micro-controller 104 of the SBC 10 through the communication interface 102. The command may be transmitted to the slave micro-controller 3011, 3021, . . . , and 30n1 of the peripheral module set 30 through the transmission unit 20 after the master micro-controller 104 completely processes the command. The slave micro-controllers 3011, 3021, . . . , and 30n1 in response to the command will control the corresponding functional elements 3012, 3022, . . . , and 30n2 to execute the function by request of the product developer.
Accordingly, the master micro-controller 104 just commands the slave micro-controllers 3011, 3021, . . . , and 30n1, instead of direct control on all functional elements 3012, 3022, . . . , and 302n2. Thus, the slave micro-controllers 3011, 3021, . . . , and 30n1 in response to the command control the functional elements 3012, 3022, . . . , and 30n1. Accordingly, the loading of the master micro-controller 104 may be efficiently reduced. It is noted that when the SBC 10 communicates with the peripheral module set 30, the transmission unit 20 just services one peripheral module (301, 302, . . . , or 30n) at a time and in FIFO (first in, first out) sequence in request of use.
Thus, the developing system of the re-configurable modularized robot to build in one slave micro-controller in each peripheral module, which executes the commands coming from the master micro-controller. Moreover, the master micro-controller communicates with the plurality of slave micro-controllers via a transmission unit. Wherein the transmission unit may be a three-wire transmission interface to transmit data and clock signals and send the status or the real time information of the peripheral module back to the master micro-controller. Because the control know-how is built-in within the slave micro-controller of each peripheral module in a totally object-oriented manner, the master micro-controller may control the plurality of peripheral modules to communicate and cooperate at the same time, with this reliable scheme, the difficulty of the development of the master/slave micro-controller system is reduced, the functionality of peripheral modules is increased, and dramatically reduce the system loading when pooling the peripheral modules. Furthermore, it leads the accomplishment of the diversified and originative robots. Next, there are some applications in accordance with the present invention as follows.
According to the spirit of the present invention, the application of the developing system of re-configurable modularized robot may the product developer with choosing the different functional elements for different application fields to allocate the SBC and the transmission unit to achieve the diverse applications of the SBC and the functional elements. For example, the functional element may be an output element (such as the Light Emitting Diode, Liquid Crystal Display, the Organic Light Emitting Diode, the Vacuum Fluorescent Display, and the seven-segment Display), an input element (such as the keyboard, the joystick, the knob, the touch panel, and the mouse), a motive power element (such as the motor, the proportional-integral-derivative, and the servo driver), a network element (such as the Ethernet, the Webserver, and the X-ten), a storage element (such as the flash memory, the electrically erasable and programmable read only memory, and the digital security card), a vocal element (such as the speech element, the voice recognition element, the text-to-speech element, and the synthesizer element), an image element (such as the image recognition element and the color recognition element), a Fuzzy algorithm element, a communication element (such as the radio frequency identification element, the infrared element, the radio frequency element, the infrared data association element, the Zigbee element, the RS-232, the I2C, the general packet radio service element, the modem, the universal serial bus, the bluetooth element, the code division multiple access element, the global system for mobile communication element, the RS 422/485, and the telecom), a sensor element (such as the temperature sensor, the press sensor, the motion sensor, the humidity sensor, the ultrasonic ranger finder, and the IR ranger finder), a navigation element (such as the global positioning system, the accelerator, the electronic compass element, the gyro), an AM/FM radio element, a relay, an analog to digital converter, and a time piece.
Please referring to
On application, the satellite positioning robot 40 exploits the keyboard module 404 to setup the location of the destination, while the GPS module 406 gets the location coordinates from the satellite signal, and transmits the coordinates value back to the SBC 10 through the transmission unit 20. Next, the SBC 10 commands the servo motor 403 to move the satellite positioning robot 40 to a default position and the OLED module 401 displays the current coordinates of the satellite positioning robot 40. The IR module 402 may detect whether any barricade exists on the robot-moving route or not at the same time. Once the IR module 402 detects a barricade on the robot-moving route, the IR module 402 will send a signal back to the SBC 10 though the event line (not shown) of the transmission unit 20 to notice the SBC 10 about the coordinates of the barricade. Then, the SBC 10 will correct the moving route of the satellite positioning robot 40 immediately and command the servo motor module 403 to drive the satellite positioning robot 40 to move.
Please referring to
Please referring to
Please referring to
Although the present invention has been explained in relation to its preferred embodiment, it is to be understood that other modifications and variation can be made without departing the spirit and scope of the invention as hereafter claimed.