Skip to main content

The mechanical structure of mobile module for new self-configurable intelligent environment


The intelligent space (iSpace) is a representative extensive environmental system. In the iSpace, various Distributed Intelligent Networked Devices (DINDs) are installed for the provision of useful services. Through the input device of the DIND, the iSpace recognizes a spatial situation and user’s demands and then determines the appropriate service based on the recognized information. Physical and nonphysical services are provided by the agent robots and the output devices of the DINDs. The system is designed to increase the convenience of the user’s life. However, the conventional iSpace has an unsolved problem related to a DIND’s physical location, because most DINDs are fixed to the walls and ceiling, and this constrains a DIND’s usable range. To solve this problem, a self-configurable iSpace, referred to as reconfigurable intelligent space (R+iSpace), and a mobile module (MoMo) for the R+iSpace are proposed in this paper. A MoMo is a type of wall climbing robot, and the DIND is mounted on the MoMo. The DIND’s spatial constraint problem can be solved by rearrangement of the MoMo. MoMo has several necessary conditions that must be satisfied, and we developed three prototypes that fulfilled these requirements. This paper describes the required conditions and the mechanical structures of the prototypes of MoMo. The prototype of MoMos can move within modified walls and ceilings. Experiments to verify the mobility of the latest prototype of MoMo and effectiveness of the R+iSpace were performed. The latest prototype of MoMo is found to have a mechanical structure for the implementation of the R+iSpace that is superior to the previous versions, and the R+iSpace is found to effectively solve the DIND’s spatial constraint problem.


Intelligent environments (IEs) are extensive environmental systems that provide information and services to their users. They are known by various names such as smart room, ubiquitous computing environment, and intelligent space (iSpace) [14]. The interaction between an IE and a user is realized by networked sensors that are installed in the walls and ceilings of a building. In the case of the iSpace, these are Distributed Intelligent Networked Devices (DINDs). Spatial situations or user’s demands are identified by the recognition application of the DINDs through input devices such as a camera and a microphone. The DINDs in the iSpace integrate the obtained information from the DINDs with the recognition application and then decide the appropriate service according to the current situation. This service is provided by agent robots and DINDs through output devices such as a projector and a speaker. Physical agent robots provide the physical services, and the DINDs handle the information provision services.

The disadvantage of conventional IEs

Many studies have been focused on the improvement of iSpace’s performance [57]. The performance of the iSpace is evaluated by the suitability of the provided service and the completeness of the service fulfillment. High-quality recognition results assist in deciding on the proper service according to the situation; moreover, such results can be achieved by the high-performance recognition application or advanced input devices. However, even though the iSpace uses the high-performance recognition application with advanced input devices, it does not guarantee that the recognition result will have a consistent high accuracy because all devices have a spatial constraint issue. It is quite obvious that the recognition results of a target in the blind spot of a device are poor. Although the target may be located in the device’s field of vision, the output of the recognition application may not always be of the highest standard because the best results can only be achieved when the target is located in the device’s optimal position. This is not only a problem in directional devices but also omnidirectional devices, which also have a usable area that is restricted by a distance between the device and a target. The amounts and quality of information that are achieved by the device decline according to increments of the distance. This indicates that all devices have an allowable area and that the iSpace cannot provide the appropriate service to a user when the user moves out of this area.

The necessary conditions for a new IE

Fig. 1
figure 1

Conceptual diagram of the R+iSpace. All DINDs are mounted on the mobile modules in the R+iSpace, and the mobile modules can move on the walls and ceilings. Through the rearrangement of the DINDs, their spatial constraint problem can be solved

To solve this problem, we have focused on the automatic rearrangement of devices. The new IE, the reconfigurable intelligent space (R+iSpace), can solve the spatial constraint problem of DINDs via rearrangement to their optimal position. Thus, the R+iSpace can guarantee a consistent performance. To rearrange the DINDs, the DINDs are mounted on mobile modules (MoMos), which to avoid interference with a human movement, take the form of wall climbing robots. For example, if the DINDs are mounted on general mobile robots, the possibility of collision with humans is increased and they will interfere each other. Figure 1 shows a conceptual diagram of the R+iSpace and shows that the DINDs are mounted on MoMos that can move freely on walls and ceilings. A MoMo’s mechanical structure is described in the method section.

We identified several necessary conditions for the R+iSpace and MoMo as follows.

  • The DINDs in the R+iSpace can automatically rearrange their position according to the situation.

  • The DINDs should move on the walls and ceilings to avoid interference with the movement of human users.

  • The adhesion of MoMos to walls and ceilings should be stable in various conditions.

  • The estimation or measurement of rearranged positions should be obtained easily and with high accuracy.

  • The system should not require additional energy to maintain its current state.

The first condition is a necessary condition for solving the problems with conventional IEs. The other conditions are suggested to increase the usefulness and feasibility of the new IE in the real world.

Mechanical structures of conventional wall climbing robots

Fig. 2
figure 2

Representative conventional wall climbing robots. a “Planar Walker” developed by the Nanyang Technological University, b “StickyBot” developed by Stanford University, c “Crawler” developed by Dalhousie University, d “HangBot” developed by the University of Tokyo, and e “Acroboter” developed by the Budapest University of Technology and Economics

As aforementioned, the DINDs in the R+iSpace should be mounted on the MoMos for their automatic rearrangement. In addition, the DIND’s rearranging method should be satisfied aforementioned necessary conditions. A wall climbing robot is a good solution for the satisfaction of first and second conditions. To satisfy the remaining conditions, the mechanical structure of a MoMo is very important. There are various adhesion methods for conventional wall climbing robots: suction force, sticky materials, magnetic force, a mechanical combination, etc. Figure 2 shows examples of conventional wall climbing robots that employ the aforementioned adhesion methods.

The “Planar Walker” (Fig. 2a) uses a suction force to stick to a wall. Many other wall climbing robots also employ this method [810]. Such robots are fitted with a suction cup to stick their body to the wall. Generally, these cups include a controllable vacuum motor. Robots using suction force can move freely on wall surfaces, and heavy devices can be mounted on the robot when the suction force is sufficiently strong. However, this mechanism has several drawbacks for our application. Robots that employ this mechanism require a continuous energy supply to maintain the robot’s adhered status. Moreover, estimation of a robot’s position is not easy; without additional sensors, this estimation includes errors, and these errors accumulate according to increments in moving distance.

The “Sticky Bot” (Fig. 2b) has adhesive pads on its feet [11]. The adhesive pads have an anisotropic structure that permits controllable adhesion. Therefore, the “Sticky Bot” can move freely on the smooth surfaces of walls. This mechanism has similar disadvantages to the use of suction force: estimation of the robot’s position is not easy, and the absorptivity of the adhesive pads is vulnerable to dust and humidity.

The “Crawler” (Fig. 2c) that was designed for the movement on the oil tank, employs permanent magnets [12]. This method is used by various robots in numerous forms [13, 14]. These robots do not require a continuous energy supply to maintain the robot’s adhered status, and the permanent magnets can ensure the robot’s adhered status for extended periods. However, this mechanism also has the position estimation problem and is therefore not suitable for a MoMo.

The “HangBot” (Fig. 2d) and “Acroboter” (Fig. 2e) use mechanical equipment to adhere to a wall. The “HangBot” requires a special wall that has many holes aligned to be used in combination with the robot, and the “Acroboter” requires the installation of numerous ‘anchor points’ in a ceiling [15, 16]. Such use of mechanical equipment has two merits: a wall climbing robot using this method does not require additional energy to maintain its current state. The current position of the robot is determined by preinstalled positions of mechanical equipment, and it allows the current position of the robot to be easily obtained without additional sensors. Using this method, a MoMo can readily satisfy the necessary conditions.

This paper is constructed as follows. In the methods section, the mechanical structures of the R+iSpace and MoMos are described. We developed three prototypes of MoMo that satisfy the conditions aforementioned. In this section, the characteristics and disadvantage of the previous prototypes of MoMo are briefly described. Then, the main features of the latest prototype of MoMo are described in detail: the electrical system, the software architecture, the mechanical structure, and adhesion method. As aforementioned, the R+iSpace is an expanded iSpace for the iSpace application. Therefore, the R+iSpace’s software architecture is almost same as a conventional iSpace’s software architecture. In the both system, the input DINDs observe the spatial situation, and it is conveyed to the other DINDs. Finally, the services are provided by the output DINDs. In the R+iSpace, there are additional processes between the information sharing and the service provision. Based on the shared spatial information, the DINDs mounted on the MoMos are decided their appropriate position, and then, they are rearranged by the MoMos. For these processes, the algorithms of the generating destination of DIND and the path planning of MoMo are crucial functions to achieve the complete R+iSpace. However, this paper discuss the mechanical structure of MoMo and its mobility mainly. Therefore, this paper will mention the algorithms briefly. In the results and discussion section, two experiments on the latest prototype of MoMo are presented. The first experiment was performed to verify the mobility of the latest prototype of MoMo, and the second was performed to verify the validity of the R+iSpace. As a result, the R+iSpace was found to effectively solve the DIND’s spatial constraint problem, and the latest prototype of MoMo was found to be an excellent solution to realize the R+iSpace.


We developed three prototypes of MoMo, which were designed to take the characteristics of conventional wall climbing robots into consideration. All MoMos use a screw-nut mechanism to satisfy last necessary condition. This self-locking screw-nut mechanism is used to fix an object to various mechanical structures. The first and the second prototypes of MoMo have controllable screw pins in their body. The nuts are inserted into the walls and ceilings. The modified walls and ceilings used by a MoMo are called fields in this paper. The latest prototype of MoMo uses a pin lock mechanism instead of screw pins, and the field has only holes. The screw and nut are moved to the inside of a MoMo. The specifications of the prototypes of MoMo are shown in Table 1.

Table 1 Specifications of the prototypes of MoMo

Previous prototypes of MoMo

Fig. 3
figure 3

Mechanical structure of MoMo1 and its field. MoMo1 has four legs, each comprising a panning actuator, a pinning actuator, and a screw pin. The screw pins are inserted into the nuts that are placed into the field

Fig. 4
figure 4

Gait sequence of MoMo1. MoMo1 can rearrange to its next position by the sequential rotation of its legs

In this section, the mechanical structure and gait sequence of the previous prototypes of MoMo are briefly described. The first prototype (MoMo1) has four legs, and each leg has a controllable screw pin [17]. The nuts for use in combination with the screw pins are inserted into the field at a uniform distance with external cases. MoMo1 and its experimental field are illustrated in Fig. 3. The position of MoMo1 is restricted by the position of the nuts. Therefore, the position of MoMo1 is simply obtained by the precalculated position of nuts and any error in the estimated position is not cumulative. Moreover, the estimation is accurate, reliable, and robust. MoMo1 moves on the field by sequentially screwing the pins into adjacent nuts. The gait sequence of MoMo1 is illustrated in Fig. 4. MoMo1 achieves stable movement by rotating one leg at a time. However, the time required for a movement from one position to the next, a distance of 150 mm, was approximately 46 s. This speed is not sufficient for use in the R+iSpace. The main reason for the low speed is that it spent large amounts of time loosening and tightening the screws.

Fig. 5
figure 5

Mechanical structure of MoMo2 and its field. MoMo2 comprises two legs and a translation component. Each leg has three screws that are controlled simultaneously. The field for MoMo2 is composed of numerous stations, each with three nuts, and these interact with the screws on each leg

Fig. 6
figure 6

Gait sequence of MoMo2. MoMo2’s gait sequence is simpler than that of MoMo1 and is composed four steps: loosening the screws, rotating the body, tightening the screws, and translating the device

To Increase the speed of the MoMo, the second prototype (MoMo2) was designed [18]. MoMo2 and its experimental field are shown in Fig. 5. It comprises two legs and a translation component, upon which is mounted the DIND. The translation component is moved in a straight line between the two legs. This motion is used to reduce MoMo2’s moment of inertia during a whole body rotating motion. Each leg has three screw pins that are rotated simultaneously by a pinning actuator. This mechanical structure reduces the number of steps in the gait sequence. The arrangement of nuts is adjusted according to changes in the mechanical structure. In the new field, three nuts compose one station and they are allocated in the form of an equilateral triangle. These stations are allocated at uniform distance and this is the same distance as between the two legs of MoMo2. This indicates that the two legs are fixed at two adjacent stations. The gait sequence of MoMo2, illustrated in Fig. 6, is simpler than that of MoMo1. For MoMo1, movement between two positions comprised 14 steps. However, for MoMo2 only four steps are required: loosening of screws, rotation of the body, tightening of screws, and translating the DIND. The moving speed is increased in accordance with the reduction of steps in the process. As it is shown in Table 1, the no-load speed of MoMo2 is more than six times faster than that of MoMo1. However, MoMo2 does not have an additional sensor for checking the status of the screw pins. Therefore, on occasion, a positioning error causes abrasion of the screw pins during their insertion into the nuts. This abrasion results in incomplete insertion into the nut and a gap between MoMo2 and the field. This gap occasionally causes a critical positioning error between the other leg and its desired station. The latest prototype of MoMo is designed to solve the problems of the previous prototypes.

The latest prototype of MoMo

The electrical system and software architecture of MoMo3

Fig. 7
figure 7

Electrical system of MoMo3. MoMo3 has a main processor, a subcontroller, six actuators, and two LiPo battery packs. The main processor of a MoMo communicates with the other MoMos via a Wi-Fi network. The subcontroller controls six actuators

Before explanation of the mechanical structure of the latest prototype (MoMo3), we will briefly explain the electrical system and software architecture of MoMo3. The electrical system is illustrated in Fig. 7 and is composed of a main processor, a subcontroller, six actuators, and two LiPo battery packs. The battery packs are 14.8 V each and have a capacity of 2250 mA h. Among the six actuators, four are used for the movement of MoMo3 and the other two are pan-tilt actuators to control the viewing direction of the mounted device. The ODROID-U3 is employed as the main processor and is responsible for the higher level components in the control of MoMo3 [19]. A detailed description of the task of the main processor is given in the following paragraphs. The main processor equips a USB Wi-Fi dongle and MoMos communicate with each other via a Wi-Fi network. Through the Wi-Fi network, the MoMos can share the latest information regarding the spatial situation. The OpenCM9.04 is employed as a subcontroller for the actuators [20]. The OpenCM9.04 is connected to the ODROID-U3 via a USB serial line for communication. The OpenCM9.04 receives the operation code for the movement of MoMo3 from the main processor and then prepares an instruction packets for the actuator’s actual motion. The packets are transmitted via a half duplex UART serial line to the actuators.

Fig. 8
figure 8

Software architecture of MoMo3. MoMo3 has five main tasks: device control, generating destination, path planning, shred memory, and motion control. Numbers indicates the order in the flow of software. In the flow of the software, and are executed when the destination is the same as the current position. the latest information of the spatial situation, the destination and current position, the destination and current position of the other MoMos,   the next position of the MoMo, the updated position after motion, the activate flag of the device control task, the updated spatial information

The software architecture of the main processor is shown in Fig. 8. It has several tasks such as device control, shared memory, generating destination, path planning, and motion control. The main processor employs the RT-Middleware (RTM) for the connection between the components [21] and the connection for communication among MoMos.

The device control component is the application of DIND such as face and gesture recognition via a camera and the visual information provision via a projector. Through this component, the MoMo obtains information on the spatial situation and user’s demands or provides services such as visual and auditory information provision.

The obtained information is transmitted to the shared memory, which is composed of the preemptive memory and the nonpreemptive memory. In the nonpreemptive memory, information on the spatial situation and the user’s demands are stored. The nonpreemptive memory is accessible by any MoMo at any given time. The MoMos obtain the latest information via the shared memory, and their current positions and destination are stored in the preemptive memory. MoMo3 accesses the preemptive memory during path planning. Through the employment of the preemptive memory structure, MoMo3 can avoid a deadlock situation and collision between MoMos.

The generating destination component provides the proper position of MoMo3 according to the current situation. In this component, the MoMo accesses the nonpreemptive portion of the shared memory to obtain the latest information on the spatial situation. This component calculates MoMo3’s destination based on the information. The basic idea of the generating destination algorithm is based on the relative position between a DIND and its target. The relative position affects the performance of iSpace application, and this indicates that the appropriate position is decided by the target’s position and direction. The algorithm was designed with the characteristic. The algorithm is constructed six layers, and first two layers evaluate the suitability of all available locations according to the relative position. In the third and fourth layers, the algorithm calculates the influences of the obstacles in the space. Finally, the algorithm calculates the weight value according to travel time. The algorithm decides the destination of DIND by integration of the results of all layers. When the current position is the same as the decided destination, the component activates the device control component. In the other cases, the MoMo’s destination is transmitted to the path planning component.

The path planning algorithm is based on the A*. The algorithm is constructed five layers to avoid a deadlock situation and collision. In the first layer, the algorithm calculates the cost of adjacent locations according to the moving time. In the second and third layers, the algorithm evaluates the suitability of adjacent locations based on A*. In the other layers, the algorithm calculates costs of the repulsive forces that are generated by the other DINDs. Through the repulsive forces, the algorithm can solve the deadlock situation. The algorithm decides next location by integration of the results of all layers. The R+iSpace is a distributed system, and this indicates that the DINDs can calculate their path at the same time. This situation can make a big problem such as a collision. To solve this problem, the preemptive memory structure is designed. The path planning component occupies the preemptive memory when it is started. When the memory is occupied by another MoMo, a MoMo waits for its own turn. After the calculation of next location, the path planning component updates a MoMo’s next location and destination in the shared memory and then releases the preemptive memory. The output data of the path planning component is a MoMo’s next location, and it is transmitted to motion control component.

The motion control component calculates an operation code to reach the next location. The operation code is composed of two items: the rotation axis and the rotation angle. The information of the operation code is transmitted to the subcontroller.

The mechanical structure of MoMo3

Fig. 9
figure 9

Mechanical structure of MoMo3. MoMo3 comprises a main body and two legs. The device is mounted on the center of main body. A leg comprises a panning actuator, a pinning actuator, a leg’s housing, and a pin plate. Three pins are attached on the pin plate

In this section, the mechanical structure and kinematics model of MoMo3 are described. As aforementioned, MoMo3 is designed to solve the problems inherent in the previous prototypes. To overcome the problem with MoMo2, MoMo3 does not use screw pins. The detailed mechanical structure is shown in Fig. 9. There are two major differences in mechanical structure between MoMo2 and MoMo3. The first is the existence of the translation component. In the gait of MoMo2, the time for a movement to the next position was 11.7 s and the time for the translation motion was 6.5 s. The translation component is eliminated to increase the moving speed. Through the elimination of the translation component, the gait sequence of MoMo3 is simplified and can be summarized as follows.

  1. Step 1

    Unlock leg #1.

  2. Step 2

    Rotate the whole body of MoMo3 using the panning actuator of leg #2 until the leg #1 is located at desired station.

  3. Step 3

    Lock leg #1.

The elimination of the translation component has a drawback. As aforementioned, this component is designed to reduce the moment of inertia during the whole body rotating motion. To solve the problem of the increased moment of inertia due to the elimination of the translation component, MoMo3 employs a panning actuator with higher torque than that of MoMo2.

Fig. 10
figure 10

Kinematics scheme. MoMo3 has four DOF for the movement and two DOF for changing the DIND’s viewing direction. The panning actuator generates the rotating motion of the leg or the body in direction A, and the pinning actuator generates the linear translating motion of the pin plate in a direction of B

The other difference is that MoMo3 employs a pin lock mechanism rather than a screw-nut mechanism. The pin lock mechanism of MoMo3 will be explained after the description of its components and kinematic model. As it is illustrated in Fig. 9, MoMo3 comprises two legs and a main body; moreover, a leg comprises panning actuator, pinning actuator, pin plate, and leg’s housing. Three pins are attached to the pin plate, and a pin comprises pin head, thin bar, and locking cylindrical area. Figure 10 shows the kinematic model of MoMo3. The pin plate is moved in direction \(\overleftrightarrow {B}\) by the pinning actuator, and the leg is rotated in direction \(\overleftrightarrow {A}\) by panning actuator. When the leg is unlocked, it can be rotated by its own panning actuator. When one leg is locked and the other is unlocked, the panning actuator rotates the whole body of MoMo3. As aforementioned, the pan-tilt actuator controls the DIND’s viewing direction.

Fig. 11
figure 11

Mechanical structure and arrangement of the station. The station has three distinctive holes, and the hole comprises three parts: the entering hole, the locking hole, and the bridging path. The distance between adjacent stations is the same as the distance between two legs of MoMo3

The mechanical structure of a station is changed according to a change in a MoMo’s mechanical structure. The mechanical structure and arrangement of the station are illustrated in Fig. 11. The station for MoMo3 has a simple structure, made from an aluminum plate with three distinctive holes. A hole comprises three parts: an entering hole, a locking hole, and a bridging path.

Fig. 12
figure 12

Sequence of the locking/unlocking motion of MoMo3. a Unlocked state, b pushing motion by pinning actuator, c rotating motion by panning actuator, and d locked state

The locking/unlocking of leg is achieved by the combination of the motions of the pinning and panning actuators and is illustrated in Fig. 12. A description of the figure is as follows.

  1. 1.

    The pin plate is pushed by the pinning actuator.

  2. 2.

    The pin plate is rotated by the panning actuator until the pins are located in their locking/entering positions.

  3. 3.

    The pin plate is pulled by the pinning actuator.

Fig. 13
figure 13

Cross-sectional view of the locked leg and station. The figures show cross-sectional views that are parallel and orthogonal with the field respectively. The gap and the incline planes of the pin make the pulling and pushing pin motions smooth. The sponge, which is adhered to the bottom of the legs of MoMo3, helps the MoMo3 to fix to the field stably

Figure 13 shows a cross-sectional view of a leg and station when the leg is locked. As it is shown, there is a gap between the pin and locking position of station, and there is two incline planes in the pin. These allow MoMo3 to combine with the field smoothly. However, the gap causes a misalignment between the pins and the entering holes at the other leg, and this will be increased by the existence of an abrasion. This indicates that the durability of MoMo3 and the field is important. Therefore, the essential components of MoMo3 and the field are manufactured using the metal materials to increase their durability. However, this does not completely guarantee against the abrasion of these parts. Therefore, MoMo3 requires an additional process to overcome the error caused by abrasion.

Oscillation of the leg

Fig. 14
figure 14

Oscillating motions of MoMo3. a First oscillation is generated by the panning actuator of the locked leg and a second oscillation is generated by the panning actuator of the unlocked leg. b The magnitude of oscillations is gradually decreased

Not only the gap but also the backlash in the gear box can cause pin misalignment. To overcome this, we propose an oscillating motion of the leg while the pinning actuator pushes and pulls the pin plate. Typically, it is not a straightforward task to simultaneously insert multiple pins into multiple holes without sensors, and MoMo3 will be damaged if even one pin is not aligned in its correct position. A pin can be aligned within a tolerance range by an appropriate oscillating motion. Once a pin is sufficiently inserted into its hole, it will not deviate from the hole. Then, the other pins can be located in their correct positions and smoothly inserted into their holes. Thus, the MoMo can overcome the misalignment. MoMo3 uses two types of oscillation as shown in Fig. 14a, and these oscillation functions are defined as follows.

$$\begin{aligned} F_{1}(t) = {{\mathrm{Mag}}}_{1} \cdot \sin (2\pi \cdot {{\mathrm{Freq}}}_{1} \cdot t)\cdot D(t)\end{aligned}$$
$$\begin{aligned} F_{2}(t) = {{\mathrm{Mag}}}_{2} \cdot \sin (2\pi \cdot {{\mathrm{Freq}}}_{2} \cdot t)\cdot D(t) \end{aligned}$$

\({{\mathrm{Mag}}}_{1}\), \({{\mathrm{Mag}}}_{2}\), \({{\mathrm{Freq}}}_{1}\) and \({{\mathrm{Freq}}}_{2}\) were empirically determined as \(0.88^\circ\), \(1.77^\circ\), 50 and 100 Hz, respectively. In (1) and (2), D(t) is a negative sigmoid function that is added to reduce the magnitude of oscillations according to the increase of t and is defined as follows.

$$\begin{aligned} D(t) =\frac{e^{-5(t-1)}}{1+e^{-5(t-1)}} \end{aligned}$$
Fig. 15
figure 15

Oscillation experiment when misalignment occurs. In the initial state, misalignment with an error distance of 10.58 mm occurred. The interval between figures is approximately 0.1 s

The graphs of these oscillation functions are shown in Fig. 14b. To verify the effectiveness of the oscillating motion, an experiment was performed on the gait sequence of MoMo3. In this experiment, we supposed that the MoMo’s panning actuators have a \(3^\circ\) error. In this situation, the maximum position error between a pin and an entering hole is 10.58 mm. As shown in Fig. 15, MoMo3 can overcome the misalignment and lock its legs even if the gap or gear backlash exist.

Results and discussion

Latest prototype of MoMo experiment

As aforementioned, MoMo should satisfy several conditions. Especially, error in the estimation of position should be within a certain range. The accurate of motion repeatability is also a critical factor in MoMo’s mobility, because the device does not perform an initialization after rearrangement. The accuracy of repeatability is presented as the position error after rearrangement at the same location.

Fig. 16
figure 16

Movement path of MoMo3 in the mobility experiment. MoMo3 moves through \(P_1\), \(P_2\), \(\ldots\), \(P_{14}\), \(P_2\), and \(P_1\), sequentially

Fig. 17
figure 17

MoMo3 and its experimental field. a A WebCAM is mounted on MoMo3, along with a main processor and subcontroller. The size of the experimental field is approximately 2 m \(\times\) 1.8 m. b For the experiment on MoMo3 mobility, several markers were mounted on the field and MoMo3. The marker located on the center of MoMo3 informs as to the reference position of the DIND. Ten markers are attached to the field, and the motion capture system uses them to construct a coordinate system

We confirmed the error of the estimated position and the accuracy of repeatability of MoMo3 in the following experiment. MoMo3 moved along the path shown in Fig. 16; the distance for one lap is approximately 186.62 cm. MoMo3 repeats the gait motion 16 times to complete one lap and moves along the path seven times. MoMo3 and its experimental field are shown in Fig. 17a.

This experiment was performed using a motion capture system. The motion capture system, “Raptor-E” by “motion analysis” was used [22]. We used six cameras, which can be operated at up to 500 fps at a full resolution of 1280 \(\times\) 1024 pixels. As shown in Fig. 17b, markers for motion capture were mounted on the field and on MoMo3. The marker mounted on the center of MoMo3 indicates the device’s position. The motion capture system records the device’s current position during the experiment. The positions are illustrated in Fig. 16 as \([P_{1}, P_{2}, \ldots , P_{14}]\), and the device passed the positions at least seven times during the experiment. \(P_{n}^{k}\) indicates the kth recorded positional data on the \(P_n\). The maximum value of k (\({{\mathrm{Max}}}_{k}\)) is 14 when \(n=1\) or \(n=2\) and in other cases is 7. The average value of \(P_n\) is denoted as \({{\mathrm{MP}}}_{n}\), which is used as a reference position. The accuracy of repeatability at \(P_n\) (\({{\mathrm{RA}}}_{n}\)) is calculated as follows.

$$\begin{aligned} {{\mathrm{RA}}}_{n}=\frac{1}{7} \sum _{i=1}^{{{\mathrm{Max}}}_{k}}{ \left( Dist\left( {P}_{n}^{i}, {{\mathrm{MP}}}_{n}\right) \right) } \end{aligned}$$

In the above equation, \(Dist({P}_{a}, {P}_{b})\) indicates a distance between two points \({P}_{a}\) and \({P}_{b}\). \({{\mathrm{RA}}}_{n}\) indicates the average distances between the recorded positions and \({{\mathrm{MP}}}_{n}\) at the same location.

Table 2 Estimated device positions on the path (mm)

The ideal position of a device that takes only the mechanical structure of the field into consideration can be calculated directly, and the calculated device’s ideal position is the estimated position. In this experiment, the estimated positions (\({{\mathrm{EP}}}_{n}\)) are determined as in Table 2. The errors of the estimated positions (\({{\mathrm{EE}}}_{n}\)) are calculated as follows.

$$\begin{aligned} {{\mathrm{EE}}}_{n}=\frac{1}{7} \sum _{i=1}^{7}{ \left( {P}_{n}^{i}-{{\mathrm{EP}}}_{n} \right) } \end{aligned}$$

\({{\mathrm{EE}}}_{n}\) is a crucial factor to satisfy the fourth necessary condition of the R+iSpace, i.e., the error of the estimated position should be within a certain range, and it should not be accumulated.

Table 3 Results of the accuracy of repeatability and estimated position error experiments

The results of the accuracy of repeatability and accuracy of estimated position experiments are shown in Table 3. The average position error at the same position is 0.21 mm and has a maximum of 0.33 mm. This result shows that MoMo3 can reach the same position within a maximum error distance of 0.33 mm; this is acceptable error in the IE.

Fig. 18
figure 18

Results of the estimated position error experiment. The estimated position error does not have a noticeable relevance to the moving count

In the R+iSpace, the position of the device is determined as the estimated position. Therefore, the error between the estimated position and actual position should be small and within a certain range. As shown by the results, the maximum error is approximately 2.2 mm, which is an acceptable error for the R+iSpace. From Fig. 18, the estimated positional error is not accumulated with the continued movement.

Experiment to verify effectiveness of the R+iSpace

As aforementioned, the R+iSpace is designed to solve the DIND’s spatial constraint problem. Therefore, the effectiveness of the R+iSpace is verified when it solves this problem. In this experiment, there are three cameras for face detection in the space. A camera is mounted on MoMo3, and two cameras are fixed on the field. The cameras that are fixed on the field represent the iSpace, and the camera mounted on MoMo3 represents the R+iSpace. These cameras capture the user’s face, and the captured images are processed by the “OKAO Vision”, a face detection program by ‘Omron’ [23].

Fig. 19
figure 19

Two situations for the face detection experiment. a In this experiment, two cameras (WebCAM1 and WebCAM2) are installed in the space, and WebCAM3 is mounted on MoMo3. In Situation1, the user is standing on the floor, and in Situation2, the user is sitting on the chair. b In Situation1, all cameras can take a photo of the user’s face, and the application program detects the user’s face using all cameras. However, in Situation2, the application program can detect the user’s face only through the camera mounted on MoMo3; the other cameras are useless in Situation2

Figure 19 shows two predetermined situations. In the initial state, the user stood as in Situation1 in Fig. 19, and then sat on the chair as in Situation2. MoMo3 rearranges the device to the proper location for face detection according to the target’s position. In this experiment, the location of the target was given beforehand and the MoMo’s destination and the camera’s viewing direction were also calculated beforehand. The captured images from the three cameras in each situation are shown in Fig. 19a, and the processed results from the face detection program are illustrated in Fig. 19b. As it is shown the results, the face detection via the fixed cameras failed when the situation was changed, but the face detection via the camera on MoMo3 succeeded because the camera was rearranged according to the target’s position. This indicates that the DIND’s spatial constraint problem can be solved in the R+iSpace.


In this paper, the Reconfigurable Intelligent Space and the Mobile Module were proposed. The R+iSpace is an improved iSpace that can reconfigure the space by the rearrangement of the DINDs. The implementation of the R+iSpace is enabled by the MoMos on which all DINDs are mounted. In this paper, the mechanical structure and disadvantage of previous prototypes were described briefly, and then the latest MoMo that can solve the disadvantages of the previous prototypes was proposed.

To verify the proposed methods, two experiments were performed. MoMo’s mobility was confirmed by the first experiment, where, the accuracy of repeatability and the error of the estimated position are measured and analyzed. In the second experiment, we confirmed that rearrangement of the DIND yielded an improvement in the application’s performance. As a result, the R+iSpace could solve the DIND’s spatial constraint problem, and MoMo3 is found to be an excellent solution for the implementation of the R+iSpace.

As aforementioned, the intelligent functions such as path planning of MoMos and generating destination are the crucial functions to implement the R+iSpace. In this paper, we described briefly about the algorithms of the functions. In future studies, we will address the intelligent functions in detail.


  1. Lee J-H, Hashimoto H (2002) Intelligent spaceG-concept and contents. Adv Robot 16(3):265–280

    Article  Google Scholar 

  2. Brumitt B, Meyers B, Krumm J, Kern A, Shafer S (2000) Easyliving: technologies for intelligent environments. In: Handheld and ubiquitous computing. Springer, pp 12–29

  3. Shafer S, Krumm J, Brumitt B, Meyers B, Czerwinski M, Robbins D (1998) The new easyliving project at microsoft research. In: Proceedings of the 1998 DARPA/NIST smart spaces workshop, pp 127–130

  4. Yoon H, Kim E, Lee M, Lee J, Gatton TM (2008) A model of sharing based multi-agent to support adaptive service in ubiquitous environment. In: International conference on information security and assurance, 2008. ISA 2008, pp 332–337. IEEE

  5. Lindenberg J, Pasman W, Kranenborg K, Stegeman J, Neerincx MA (2007) Improving service matching and selection in ubiquitous computing environments: a user study. Personal Ubiquitous Comput 11(1):59–68

    Article  Google Scholar 

  6. Lee J-H (2007) Human centered ubiquitous display in intelligent space. In: 33rd annual conference of the IEEE Industrial Electronics Society, 2007. IECON 2007, pp 22–27. IEEE

  7. Cai H, Hu X, Lü Q, Cao Q (2009) A novel intelligent service selection algorithm and application for ubiquitous web services environment. Expert Syst Appl 36(2):2200–2212

    Article  Google Scholar 

  8. Chen I-M, Yeo SH (2003) Locomotion of a two-dimensional walking-climbing robot using a closed-loop mechanism: From gait generation to navigation. Int J Robot Res 22(1):21–40

    Article  Google Scholar 

  9. Nagakubo A, Hirose S (1994) Walking and running of the quadruped wall-climbing robot. In: Proceedings of IEEE international conference on robotics and automation, 1994, pp 1005–1012. IEEE

  10. Elliott M, Morris W, Calle A, Xiao J (2007) City-climbers at work. In: IEEE international conference on robotics and automation, 2007, pp 2764–2765. IEEE

  11. Kim S, Spenko M, Trujillo S, Heyneman B, Mattoli V, Cutkosky MR (2007) Whole body adhesion: hierarchical, directional and distributed control of adhesive forces for a climbing robot. In: IEEE international conference on robotics and automation, 2007, pp 1268–1273. IEEE

  12. Kalra LP, Gu J, Meng M (2006) A wall climbing robot for oil tank inspection. In: IEEE international conference on robotics and biomimetics, 2006. ROBIO’06, pp 1523–1528. IEEE

  13. Fischer W, Tâche F, Siegwart R (2007) Inspection system for very thin and fragile surfaces, based on a pair of wall climbing robots with magnetic wheels. In: IEEE/RSJ international conference on intelligent robots and systems, 2007. IROS 2007, pp 1216–1221. IEEE

  14. Go T, Osawa T, Ogawa T, Nakamura T (2014) Development of traveling wave type omnidirectional wall climbing robot using permanent magnetic adhesion mechanism and proposal of locomotion strategy for the robot. In: IEEE/ASME international conference on advanced intelligent mechatronics (AIM), 2014, pp 1000–1005. IEEE

  15. Fukui R, Morishita H, Mori T, Sato T (2014) Hangbot: a ceiling mobile robot with robust locomotion under a large payload. In: Experimental robotics. Springer, pp 685–694

  16. Stepan G, Toth A, Kovacs L, Bolmsjo G, Nikoleris G, Surdilovic D, Conrad A, Gasteratos A, Kyriakoulis N, Chrysostomou D (2009) Acroboter: a ceiling based crawling, hoisting and swinging service robot platform. In: Beyond gray droids: domestic robot design for the 21st century workshop at HCI, vol 2009, p 2

  17. Park J, Lee J-H (2012) Reconfigurable intelligent space, r+ ispace, and mobile module, momo. In: IEEE/RSJ international conference on intelligent robots and systems (IROS), 2012, pp 3865–3866. IEEE

  18. Park J, Nunogaki T, Lee J-H (2013) The research on the algorithm for the optimal position and path for momo. In: 39th Annual Conference of the IEEE Industrial Electronics Society, IECON 2013, pp 7849–7854. IEEE

  19. Purchased Via Hardkernel Website.

  20. Purchased Via Robotis Website.

  21. Ando N, Suehiro T, Kitagaki K, Kotoku T, Yoon W-K (2005) Rt-middleware: distributed component middleware for rt (robot technology). In: IEEE/RSJ international conference on intelligent robots and systems, 2005 (IROS 2005), pp 3933–3938. IEEE

  22. Raptor-E Digital RealTime System.

  23. OKAO Vision.

Download references

Authors' contributions

JL provided the basic ideas of the overall system, and JP designed the robots and the overall system. All of the experiments were performed by JP and TN. All authors joined the discussions for this research. All authors read and approved the final manuscript.


This work was supported by JSPS KAKENHI Grant Number 26330302.

Compliance with ethical guidelines

Competing interests The authors declare that they have no competing interests.

Author information

Authors and Affiliations


Corresponding author

Correspondence to JongSeung Park.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Park, J., Nunogaki, T. & Lee, JH. The mechanical structure of mobile module for new self-configurable intelligent environment. Robomech J 2, 14 (2015).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: