1 Introduction

Inspired by the significant recent advancement in microelectronics, considerable efforts have been made to the development of devices and tools to manipulate objects at the microscale. Microrobots capable of traveling over a distance of several body lengths are the result of the decade long efforts that can be used for biomedical and manufacturing applications. Microrobots can be used to manipulate cells for in-vitro experiments or can be used as in-vivo drug carriers [1]. An automated micro-assembly operation can be envisioned with multiple microrobots manipulating different micron scale parts in a coordinated fashion to bring them in the workspace and assemble them into a functional product [2]. The microrobots might be equipped with manipulator comparable to the size of the the manipulated object to ensure precise force applied during the handling of delicate parts. However, it is essential to control the microrobots independently to increase the speed and throughput of the operation.

The limitation in size of the microrobots prevents the use of conventional approaches for power, actuation, and communication [3]. Several new approaches have been proposed for wireless actuation of microrobots, e.g. optical [4, 5], magnetic [611], physiological [12], etc.

Diller et al. [2] used a hybrid approach consisting of magnetic and electrostatic forces for selectively actuating a target object for assembly and disassembly operations. The object is a reconfigurable magnetic micromodule which can be selectively immobilized by applying force through the electrostatic surfaces. By using a combination of selective immobilization with the electrostatic surface and mobilization with the magnetic fields the reconfigurable objects can be brought together for assembly and separated from each other for disassembly. However, the speed of assembly and disassembly operation is slow since it has to immobilize one of the parts rather than bringing them together simultaneously. In a separate work, Diller et al. [13] have utilized the non-uniformity of the robots to control them individually with the global magnetic field in a pushing based manipulation operation. The non-uniformity of the robots allow them to respond differently to the same global magnetic field. However, the control of the robots is coupled and cannot be scaled up for large number of robots since it depends on the same global input. Frutiger et al. [14] developed a microrobot with two non-identical nickel bodies with same magnetization direction. The robot is actuated with an oscillating magnetic field which brings both the nickel bodies closer to each other that compresses a spring structure attached to the body. The spring releases the energy as the magnetic field goes off providing a driving force to the robot in the desired direction. By introducing non-uniformity in the robots the authors managed to control two robots independently. DeVon and Bretl [15] have developed a controller for these microbots with carefully introduced heterogeneity that is able to move the robots in different speeds to the desired directions with same global input. Wong et al. [16] came up with an individual magnetic field region for the robots where they can be controlled independently. However, their approach suffers from occasional singularity and faces difficulty in fine control of the robot.

Rather than using a single global magnetic field, multiple robots can be actuated by creating local dedicated magnetic field. Inoue et al. [17] have used an array of solenoids to generate local magnetic field to control multiple cm-scale robots independently. Pelrine et al. [18] have developed a printed circuit board (PCB) with an array of tracings to generate local magnetic field to actuate multiple mm-scale robots. Chowdhury et al. [19] have developed a specialized substrate with an array of mm-scale coils to demonstrate autonomous navigation of multiple mm-scale robots.

Our goal in this paper is to extend the specialized substrate approach in creating local magnetic field to control micron scale robots that can be utilized to perform microassembly operations. We have designed and experimentally validated a specialized substrate with an array of magnetic strips (we call them “microcoils”) that is capable of generating enough field gradient to navigate multiple microrobots to the desired direction independently. The basic design of the specialized substrate has been presented in [20]. We have also developed a simulation based planning approach for autonomous navigation of the robots to the desired direction. We provide more details in each of these contributions in this work as well as present experimental results on using the specialized substrate for the independent control of multiple microrobots. The limitations of the experimental platform are discussed and a modified microcoil array layout is proposed and simulated for increased performance.

2 Design of microcoil array

We have two objectives in designing the microcoil array: (1) The magnetic gradients generated by a single or a combination of neighboring coils should be enough to drive a robot and (2) The shape and dimensions of the coils as well as current carrying wires should meet a standard reliable manufacturing process.

We have designed an 8×8 array of micro strips (referred to as “microcoils”) each individually connected to the power source with dedicated traces, as shown in Fig. 1. The strips are 600 μm long and 250 μm wide whereas the traces are 100 μm wide and connect individual coils to their respective connectors. Each strip is 35 micron thick and is able to generate enough forces to actuate a 500 μm robot. In order to insulate the traces from each other we have to route them in different layers connected with the respective microcoil with a via. The traces are able to carry a current as high as 1 A. The connectors to the power source are placed far from the workspace to reduce interference with the magnetic field. The current in each coil can be controlled independently in both magnitude and direction through individual connections with custom control electronics. The resulting design is a 6 layer board which can be fabricated with standard printed circuit board (PCB) technology.

Fig. 1
figure 1

Design of specialized control substrate a Design of the microcoil array along with the traces for independent addressing; b Detailed view of different layers of the PCB board where the wires are routed to the dedicated connectors; c Close up view of the top layer where the array of magnetic strips (“microcoils”) are located

A finite element analysis has been conducted to verify the electromagnetic field generated by a single microcoil in Fig. 2. Commonly used finited element analysis software COMSOL (www.comsol.com) has been used for the simulation. We have found the field distribution with the strength of 0.1 m T is produced between two adjacent coils when a single microcoil is powered with a current of 0.5 A. The field is calculated 25 μ m away from the top surface of coil since the top surface is covered with a Teflon layer. However, the field strength can be increased and re-oriented by activating multiple microcoils.

Fig. 2
figure 2

FEA simulation in COMSOL for the magnetic field, that is produced by the microcoils. One coil is provided with 0.5 Amp current and resultant field is shown

Figure 3 shows how the microcoils should be activated to move the robot in a certain direction. To move the robot across the array of the robot (to the right or left) two microcoils need to be activated. Hence, we have activated two microcoils generating local fields in the same direction to create a resultant gradient towards the right (Fig. 4a, c). Snapshots of the experiments showed that the robot moves towards the right with the applied field (Fig. 4e, g). Moving up or down on the array of microcoils is relatively easily since the magnetic field strength is higher on the microcoil due to the coil geometry and spacing. Hence, we do not need to activate multiple coils. The robot moves down with activating the coils at the goal location (Fig. 4b, d). The snapshots from the experiments validate the simulated field (Fig. 4f, h).

Fig. 3
figure 3

Actuation of the robot in an orthogonal direction: a-b Schematic showing the coils activated (colored in red) with current to move the robot to the right and down, respectively. c-d The resulting field generated by the respective coils activated with current. e-f The surface showing the robots positioned in initial locations ready to be transported towards the right and down, respectively. g-h The robots move to the desired directions with the generation of the appropriate magnetic field

Fig. 4
figure 4

Prototype of the microcoil array: a The overall system with an overhead camera, b A close up view of the fabricated microcoils and a microrobot

Figure 4 shows the fabricated prototype of the device. Standard PCB technology is used to fabricated the microcoil array with the insulated wiring passed through different layers to the connectors. The connectors are soldered to the custom electronics (Fig. 5) to control the microcoils independently. The overall PCB board is 6 layers thick to ensure the insulation between wirings which are connected to the respective microcoil through vias. The top of the PCB board of the microcoil array is covered with a thin teflon sheet to provide a smooth surface. It also prevents liquid from touching the surface that is used on the top surface to reduce friction as well as provide sufficient drag in controlling the dynamics of the robot. We need to be able to move the robot with magnetic driving force and slow down at a particular location, either to take a turn or to stop at a goal location. Hence, we need the static friction due to the surface to be small enough for the magnetic driving force to overcome it. On the other hand, drag force along with the kinetic friction should be large enough to slow down the robot whenever is needed. The liquid reduces both static and kinetic friction of the surface but the associated drag can be utilized to slow down the robot at the target state which results in good controllability.

Fig. 5
figure 5

The control electronics consists of three components: motor driver, polarity controller, and PWM shield

For the image guided planning, we used an overhead camera (FLEA3, Point Grey) to provide visual feedback. The states of the robots and obstacles in the workspace at a certain time instant are recorded in images and transferred back to the CPU which are then processed to get useful information. A dedicated motor driver is used to provide power in each microcoil. Each coil is designed to draw a maximum of 1 Amp of current. However, we do not need to power all the coils at the same instant to drive the robots. Only the microcoils surrounding the robots needs to be provided with currents to drive them. Hence, we do not need a high current power supply.

3 Design of control electronics

Control electronics capable of supplying currents individually to each microcoil in the substrate has been built. The electronics system provides a dedicated motor driver to deliver the current, a PWM output that regulates the amount of current, and an H-bridge chip that controls the polarity of the current. All three components are arranged as an individual unit and stacked in four layers to control all 64 coils in the substrate individually. The top layer of the electronic system is shown in Fig. 5. An Arduino microcontroller is used to communicate between electronics system and CPU (Intel Core i7-4771 (3.50 GHz) processor and 16 GB RAM) using I 2 C protocol. The CPU computes the required duty cycle for the PWM which is passed through the Arduino to generate the desired current to the respective microcoils that drive the robot towards the goal location. The required polarity of the current is also passed to the polarity control board through the Arduino using the same protocol that determines the nature of the driving force (attractive or repulsive). The strength of resulting force is determined by the PWM signal and the magnetization of the robot.

4 Automated actuation of microrobot

Manual actuation of multiple robots by human(s) with the help of remote control technologies will slow down the overall tasks that need to be accomplished with the microrobot team. Hence, we have to automate the navigation of multiple robots by developing a path-planning approach that takes the other microrobots and obstacles in the scene into account to derive a collision free path. The overall automation approach is shown in Fig. 6. In this paper, we have used circular microrobots. The image provided by the overhead camera is processed using standard Hough transform [21] to identify the microrobots in the scene. The shape of the microcoil array remains fixed. An image subtraction with the background image of the mcirocoil array will give the other obstacles in the scene. The processed image will serve as feedback for the planner to compute the collision free paths for all the robots at every time instant. The planner can handle both static and dynamic obstacles in the scene.

Fig. 6
figure 6

The overall approach for automating the navigation of multiple microrobots: the overhead camera is used to estimate the current positions of the robots and the obstacles, the planner computes a collision free path, the “desired current calculation” module computes the desired current based on the precise dynamic modeling of the robot, and finally the desired current is applied to the microcoils by computing the corresponding PWM signal for the control electronics

4.1 Path planning approach

The path planning on the microcoil array has to handle both dynamic and static obstacles. We used A* based global path planner [22] to find a collision-free path for a robot to transport it to a goal location. The planner recomputes the path if the workspace is changed significantly due to dynamic and static obstacles. The workspace is discretized into rectangular grids to make the search path feasible for a robot. A robot state x represents the x and y locations of the center of the grid. A robot can transition to any of the neighboring 8 grids with the execution of an action. An action set \(A=\{\mathbf {a^{k}_{t,1}},\mathbf {a^{k}_{t,2}},\ldots ,\mathbf {a^{k}_{t,8}}\}\) consists of eight linear translation actions \(\mathbf {a^{k}_{t,i}}\) at a given time step k. A robot can transition from it’s current state x k to x k+1 with an action \(\mathbf {a}^{k}_{t}\) using the following equation.

$$ \mathbf{x}^{k+1} = \mathbf{x}^{k} + \mathbf{a}^{k}_{t} $$
(1)

The surface friction, the positions of the microcoils, and the proximity of the coils from the robot make certain transitions more favorable than others. For example, it is easier for the robot to move along the microcoil array (along Y axis) than to move across them (along X axis) since there is always higher gradients along the array. Hence, computing a shortest path is not necessarily the most optimal path in this scenario.

The path is computed by expanding the nodes in the discretized workspace from the initial state x i to the goal state x g according to a cost function c(x).

$$ c(\mathbf{x}) = g(\mathbf{x}) + h({\mathbf{x}}) $$
(2)

Where total cost c(x) is represented as the summation of optimal cost-to-arrive g(x) from initial state x i to a state x and a heuristic cost estimate h(x) from the state x to the goal state x g . We have developed a transition map by taking into account the gradient field that can be generated by the surrounding coil at a particular state in the workspace. The transition map assigns a cost based on the available gradient field for each action. We have calculated the transition map experimentally by actuating the robot with the gradient field in a certain direction multiple times and observing how many times it ends up in the target state and neighboring states. With this statistical information, we compute the transition map for a particular action. The transition is included to the heuristic cost to guide the search towards the high gradient field. The heuristic h(x) for transition from a previous state \(\mathbf {x^{\prime }}\) is calculated as

$$ h(\mathbf{x}) = t(\mathbf{x^{\prime}},\mathbf{a}) + e({\mathbf{x}},\mathbf{x_{g}}) $$
(3)

where, \(t(\mathbf {x^{\prime }},\mathbf {a})\) is the transition cost from the previous state \(\mathbf {x^{\prime }}\) to the the current state x based on the available action a and e(x,x g ) is the Euclidean distance from the current state x to the goal state x g .

4.2 Determining currents for the microcoils

We have considered the dynamics of the robot in determining what microcoils to use and the current flowing through them to drive the robots to the desired waypoints computed by the path planning module. The robot is exposed to following forces: magnetic force from the microcoils, drag force from the liquid, friction force from the surface, and the adhesive forces due to van der Waals and capillary forces. The resulting dynamics of the robot can be described as follows:

$$ m\ddot{\mathbf{x}} + \gamma\dot{\mathbf{x}} + \mathbf{F}_{fric} + \mathbf{F}_{adh} = \mathbf{F}_{d} $$
(4)

where m is the mass of the robot, γ is the drag force coefficient of the surrounding medium, F d is the desired magnetic force to drive the robot, F f r i c is the surface frictional force, and F a d h is the adhesive force. F f r i c and F a d h are computed experimentally.

To determine the microcoils which need to be activated with currents, a neighboring search is done based on the current location of the robot (Algorithm 1). Now, we have to compute how much field each microcoil can generate to compute the desired resultant magnetic force F d . However, the microcoil is of finite length compared to its width and there is no analytical solution for magnetic flux for a finite current carrying wire. Hence, we have discretized the microcoil along its length into multiple sections and applied the standard Biot-Savart law for an infinite current carrying wire [19] to calculate the magnetic flux for each section. The magnetic fields in all the sections are summed to get the resultant field in each microcoil. The magnetic force F m a g generated by a magnetic flux B can be calculated using the following equation.

$$ \mathbf{F}_{mag} = V_{r}(\mathbf{M}\cdot \nabla)\mathbf{B}(x,y,z) $$
(5)

where, V r is the volume of the robot, M is the magnetization of the robot, B is the resultant magnetic flux produced by the microcoils surrounded by the robot, and F m a g is the force experienced by the robot.

figure a

To calculate the current \(\{I\}_{i=1}^{n_{c}}\) in the surrounding n c microcoils we have devised an optimization scheme that minimize the total current flowing through n c coils that can generate the desired force F d . The coils cannot sustain higher currents than they were designed for. Minimizing the total current will help the coils run safely. The optimization problem is formulated as

$$ \begin{array}{llll} & \underset{\mathbf{I}}{\text{minimize}} & & f_{0}(\mathbf{I})={\sum}_{i=1}^{n_{c}}I_{i} \\ & \text{subject to} & & \mathbf{F}_{mag} \geq \mathbf{F}_{d}\\ & & & I_{min}\leq I_{l}\leq I_{max}, \; l = 1, \ldots, m. \end{array} $$
(6)

The optimization problem is solved as a linear programming problem with the constraints applied as inequality constraints. The Matlab optimization toolbox is used to solve for the optimized currents in real time. The sign of the current determines the polarity of the field. The resistance in the electronics current path is determined to compute the amount of the voltage each coil needs to be provided with to generate the current computed from the optimization scheme. The duty cycle D i in each microcoil can be calculated based on the power supply to generate the desired voltage difference across the coil.

5 Simulation results

We have demonstrated the capability of our planner to compute paths for two robots that are suitable for the microcoil array to execute. The planning frequency is set at 50 Hz whereas the controller and optimization loop are run at a frequency of 100 Hz. Although the robot can take any action out of 8, some actions are more suitable for the microcoil array to execute than the other due to the amount of magnetic flux along the direction of the action. We have treated the transition cost to be monotonous which remains unchanged all over the workspace for a particular action. The transition along the y direction is easier than the x direction (Fig. 3) while the transition along the diagonal direction is the worst since the distance between the cells is higher as well as the weak gradient field. We have developed a transition cost map based on the availability of gradient field. It is more suitable to take a action along the direction where there is strong magnetic gradient. We have made a ranking of the individual actions by associating a cost with each. The planner can compute a path that has higher gradient field to execute rather than the shortest paths. In Fig. 7, we see the paths computed by the planner (defined with red and white circles). We have also plotted the shortest paths for the respective robots (defined with red and white diamonds). Initial and final locations of the robots are marked as S i and G i respectively where i=1,2 in this simulation. The computed paths are longer than the shortest paths. However, they are easier to excute since they are optimal in terms of strength of magnetic field gradient along the direction of executed actions.

Fig. 7
figure 7

Automated independent navigation of two robots from their initiation locations, S 1 and S 2, to their respective goal locations, G 1 and G 2, while avoiding obstacles. The paths defined with (red and white) circles are computed by the planner whereas the paths defined by the (red and white) diamonds are the shortest paths

6 System characterization tests

Various experimental tests were conducted to characterize the performance of control substrate. Both 1mm diameter and 0.5 mm thick neodymium disc magnets, magnetized through the thickness are used for the experiments. To reduce the friction effects, a thin layer of teflon tape and thin film of mineral oil was placed on top of the substrate, underneath the microrobots. The system was tested for various parameters and the performance evaluated.

6.1 Single coil excitation

Setup: The robot was placed near the long side of a coil to study its motion under the influence of the magnetic field generated by the coils.

Results: On the activation of the coil, the robot moved towards the long side of the coil, towards the region of highest field strength. On switching the current direction, the robot moved to the other long side of the coil due to the switch in the region of maximum field strength. The effect of the coil was felt at a distance of about 600 μ m from the center of the coil to the center of the robot when the coil was activated at 0.2 A. There was no movement along the axis of the coil. This validates the simulations where the maximum field gradient is in either side of the coil. Also, as the simulation shows in Fig. 2, there is minimal field gradient in the axis along the coil.

6.2 Coil current modulation

Setup: The robot was placed near the long side of coil to study the relationship between the current in the coil and the movement of the robot under the influence of the field. The current in the coil was modulated from 0 to 0.5 A, that is the capacity of the coil.

Results: The robot could move with currents as low as 0.05 A of current. On increasing the amount of current, there was an observed increase in speed of the robot. This is attributed to the increasing field and field gradient which are directly proportional to the current. However, once the current is greater than 0.2 A, it had little effect on the actual influence range of the robot. Although the field strength and gradient generated through increasing currents increase proportionally, there is insufficient gradients for actuation of the robot outside of an 600 μ m influence region from the center of the coil to the center of the robot. It was also observed that the robot would still go to the equilibrium point which is directly above or below the coil due to the presence of maximum field at these points for the two directions of current.

6.3 Ferromagnetic material tests

Setup: The coil was also tested with a set of ferromagnetic nickel materials for use as microrobots.

Results: The nickel pieces of various sizes tested could not be moved with the field generated in this coil. The field generated is insufficient to induce a net magnetization in the nickel robots and hence the magnetic forces generated are insufficient to move the robot. Therefore, microrobots for this test-bed should be constructed using permanent magnetic materials with high magnetization to induce sufficient magnetic forces for micromanipulation.

6.4 Effect of wire traces

Setup: The actuation coils on the PCB are at the top layer of the board. There are five other layers which are used for the wiring of these coils. The wire traces in the five different layers of the coil were tested separately to see the effects of the currents flowing through the underlying trace layers on the magnetic field at the top layer (Fig. 9).

Results: There is a significant effect when the traces in the second layer have high current values (> 0.2 A). In the subsequent layers (3-6), no net force on the magnet on the surface of the coil array were observed even at higher current values up to 0.5 A. Layer 2 traces only exist for four coils in the workspace and they were carefully omitted from the subsequent experiment runs to remove their influence on the experimental results.

7 Experimental results

7.1 Independent control

We have demonstrate the autonomous independent actuation of two robots with physical experiments. Two robots R1 are R2 are transported to their respective goal locations in opposite directions.Footnote 1 Figure 8a shows the initial positions of the robots. Each robot is made of a circular neodymium magnet of 1 mm diameter (marked in red circle). The waypoints are set by activating the respective microcoils. Due to the nonuniformity introduced during fabrication, the friction is not uniform across the workspace. Hence, we see the robot R1 got stuck while R2 quickly reaches the respective waypoint (Fig. 8b). The program can detect the “stuck” situation and gradually increase the current until the robot starts moving. On the other hand, a new waypoint is set for R2 by activating the adjacent microcoil. Finally, both the robots smoothly reach the final waypoints in Fig. 8c.

Fig. 8
figure 8

Independent actuation of two robots: a Start locations of the robots R1 and R2 (Robots are marked with red circles and activated coils are marked with white boarder). b R1 is stuck and R2 reaches the waypoint on the target microcoil. New waypoint is set by activating the next microcoil and tuning off the previous coil. c Both R1 and R2 reach their respective goal locations

7.2 System limitations

Additional experiments were attempted to replicate the simulated independent trajectories of the two robots shown in Fig. 7. The microcoils can apply gradients to move the robots to the left or right, as illustrated in Fig. 3. However, the influence region of the magnetic gradients are extremely localized. This proves problematic when trying to translate the robot laterally (i.e., in the X-direction). Indeed, it is only possible to move a robot side to side if it starts off straddling the gap between two adjacent coils (Fig. 3e). Once the robot has translated to a position in the middle of the coil strip, the activation of another set of adjacent coils on the same side does not provide a large enough gradient influence region to continue to translate the robot. The simple solution to this problem would be to decrease the horizontal spacing between the microcoils. However, we are already using the minimum allowable spacing for the coils using standard PCB fabrication techniques. Therefore, a new microcoil configuration is needed to achieve independent actuation of multiple microrobots along complex trajectories (Fig. 9).

Fig. 9
figure 9

The layout of a single trace for each layer in the coil board

8 Modified microcoil array

8.1 Design layout

As discussed in the previous section, the current design of the coil allows the robot actuation in one axis smoothly while it struggles to move the robot in the other. The current design was constructed considering limitations in the PCB design process which limited the placement of the coils and the magnetic field they can generate. It was noticed from the experiments regarding the tracer layer that the current flowing in the second layer had a significant amount of magnetic field that could be used for actuating the robot. This allows us to modify the coil layout to include coils in two layers that can independently control magnetic field and gradients along both the axes locally. The trace layers can then be designed to be isolated from the top two coil layers so that they will not influence the robots in the workspace. A newly proposed design such as this is as shown in Fig. 10. This was possible by altering the in-phase thickness of the original coils to make rooms for the vias to connect to lower layer coils that don’t interfere with the operation of the coils in the top layer. There is an insulating layer between the two coil layers.

Fig. 10
figure 10

Schematic of the newly designed coil syste

An analysis of the new design shows significant magnetic field and gradient along both the axes which will yield a more complete control of robots in the workspace. Figure 11 shows simulation results for this new coil design. The arrows indicate the direction of field gradient and thus the predicted motion for the microrobot.

Fig. 11
figure 11

Simulation results from COMSOL analyzing fields in the workspace

This coil design alleviates critical issues from the previous design. However, there are critical areas in the coil schematic which do not have any magnetic field being generated when all its surrounding coils are activated. This can be seen in Fig. 12. It has to be seen if the robot can get out of this singularity point using the fields generated from the other coils. Another consideration is the size of the robot to see when it is big enough to be influenced by the other coils which can displace it from this region. A modified approach to path planning can also be used to avoid these areas. This is described in the following section.

Fig. 12
figure 12

Critical area of the coil seen not influenced by the surrounding coils

8.2 Planning with new array

We can use the same planning approach for the new array that is described in Section 4.1 for independent actuation of the robots with the new coil array. However, the transition cost will no longer be same for every state in the workspace. We have defined four separate transition cost maps for four distinctive locations based on the relative positions of the coils with respect to the current state (Fig. 13) of the robot. Figure 13 shows transition costs for three actions in four distinctive locations. Costs for the rest of the actions in the action set can be computed from symmetry. The new transition map will result in a new planned path for the robot since the planner heuristic gives preference to the transition cost in computing the path. Figure 14 shows a simulation of a path computed for the new coil design. The robot can now take actions along the diagonal direction since there is enough gradient field available in this direction. However, the transition costs are set higher for one of the locations (purple in Fig. 13) since the gradient fields are weaker for transition from those locations. Hence, the robot does not consider those states in computing the path unless those are one of the start of goal states.

Fig. 13
figure 13

Transition map for the new coil array for four distinctive state in the workspace: X is the current state and the X i is the transition state that results with the execution of one of 8 actions. The remaining cost in the transition map can be computed from symmetry

Fig. 14
figure 14

Autonomous navigation of a robot from its initial location S to its goal location G

9 Conclusion

Robots at the microscale are conventionally actuated with global fields (e.g. optical, magnetic, electrostatic etc.) since they do not have enough space to carry actuators, sensors, batteries, etc. on-board. Global actuation limits their capability to take actions that are independent of each other. In this paper, we have addressed this limitation of microrobots by developing a specialized substrate that accommodates an array of magnetic strips (“microcoils”) that can generate local magnetic fields large enough to actuate multiple microrobots independently. The magnetic field is only effective locally, influencing the motions of the robot located only in the vicinity. We have developed a physics based planning approach that takes account the dynamics of the system for autonomous control of multiple microrobots independently. We have demonstrate the effectiveness of the planner and the specialized substrate with simulation and physical experiments. A modified coil design has been proposed and analyzed for increased performance. With the capability of controlling a swarm of microrobots independently our long term goal is to develop a microfactory where multiple robots will be engaged in parallel micro-assembly operations.