Friday, December 23, 2011

Capacity Focus, 29: Robots, controls and mechatronics in compuer studies, and in information & technology education

The OWI Robot Arm Edge "toy"
As we continue to think about using robots and other mechatronic devices --
wiki"Mechatronics is the combination of mechanical engineering, electronic engineering, computer engineering, software engineering, control engineering, and systems design engineering in order to design, and manufacture useful products"  -- 
. . .  in technology education, we first have to think about affordability and how we can build up our own familiarity with the technology through initial explorations.

This is where the under US$ 50 OWI Robotic Arm Edge (as pictured) and the like -- Edge is now at Amazon for US$ 32.50 -- come in, as assemble yourself "toys." The Amazon manufacturer's blurb for this "toy" is a useful start-point:
Command the robotic arm gripper to open and close, radial wrist motion of 120°, an extensive elbow range of motion of 300°, base rotation of 270°, base motion of 180°, vertical reach of 15 inches, horizontal reach of 12.6 inches and lifting capacity of 100g. Some of the added features include a search light design on the gripper and an audible safety gear indicator is included on all 5 gear boxes to prevent potential injury or gear breakage during operation. Total command and visual manipulation using the "5's", five-switch wired controller, 5 motors, 5 gear boxes, and 5 joints. For ages 10 and up. Add USB Interface cable and Software, OWI-535USB, (not included) to integrate programming and expand the capabilities of the Robotic Arm Edge . . . . Construct your Robotic Arm into a bionic marvel, then command the gripper to open and close, twist at the wrist, rotate on its base or extend at the elbow to retrieve objects. Special features include a five switch wired controller, five motors, five joints and audible gear safety indicators to prevent potential gear damage during operation. Assembled size about 9 inches long x 6.3 inches wide x 15 inches high. Uses four D batteries, not included.
A Think Geek video shows it in action:

This is of course under pendant control. The USB interface kit and software CD (additional US$  40 or less [Amazon, US $ 26.69 current]) allows hosting the robot on a computer, though the hosting is fairly limited, e.g. there is no absolute origin, and there is a problem of loose gearing so repeatability is an issue. Blurb:
. . . For use with our Robotic Arm (Item #45203), this optional USB Interface Kit for Robotic Arm allows you to program the Robotic Arm from your PC, using a built-in interactive script writer for real-time interactive control. Program the arm to perform a sequence of movements, just like an actual robot on an assembly line. The USB Interface Kit comes complete with a CD, printed circuit board, USB cable and accessories, and a detailed instruction manual. HARDWARE and SYSTEM REQUIREMENTS: OS: Windows XP Service Pack 1,2,3/Vista. CPU: Pentium3, 1.0GHz or higher. Memory: 256MB or higher. Hardware Disk Space: 100MB or more. 
Acknowledging limitations at such a price-point, this device would be good for class demonstrations, and with some programing and planing, for experiments. But, we see that for US$ 60 or so, we are able to gain a basic hands on exposure to robotics that we can then extend to much more sophisticated systems.

Doubtless there are other kits and devices out there, starting at about the US$ 100 - 200 price point, but the issue here is to get our feet wet.

Here is an example of a Carnegie-Mellon University "roll yer own" collaborative student project [one each, mech eng, elec eng, and computer science], c. 2004, complete with typical glitches:

It is worth pausing to see the onward industrial context:

Notice, how not only are there obvious robots of various types in the car manufacturing process, but also that the overall assembly line processes are also highly automated and integrate controllers and precision mechanisms. Human workers are involved at points where our intuitive intelligence and flexibility are still an advantage.

This is the future of manufacturing and technology in general.

Which highlights the digital divide effect again, as -- by and large -- in our region, we are simply not being prepared for working productively in such a world.

In further thinking about a Java based introduction to computer programming, I came across a robotics based course here, which is presently Python-based, but a Java port is in progress, cf Java-ported draft ch 3 here.

In motivating the free online textbook (produced in the context of a collaborative initiative across several universities), prof Kumar observes in the preface, p. vi:
Computers and robots are no longer the realm of large corporate offices and industrial manufacturing scenarios. They have become personal in many ways: they help you write your term papers, store and organize your photographs, your music collection, your recipes, and keep you in touch with your friends and family. Many people might even dismiss the computer as an appliance: like a toaster oven, or a car. However, as you will learn in this book, a computer is far more versatile than most appliances. It can be used as an extension of your mind. We were not kidding above when we mentioned that computers can be used to process ideas. It is in this form, that a computer becomes an enormously powerful device regardless of your field of interest. How personal you can make a computer or a robot is entirely up to you and your abilities to control these devices. This is where this book comes in. You will learn the basics of how a computer and a robot is controlled and how you can use these ideas to personalize your computers even further, limited only by your imagination.
In short, it is demonstrably feasible to use robots, microcontrollers and interfaces in an introduction to computer programming course. 

Parallax's Scribbler 2
The course uses the Parallax Scribbler 2, a turtle format robot. (The name comes from the use of a pen-mounting slot that can then track the robot's path as it searches for a target and responds to obstacles by leaving a marker trace on a sheet of paper or the like.)

Turtle robots are low-slung mobile robots (usually mounted on wheels) that can work in autonomous or remotely piloted modes, depending. (Added, Dec 24th: Cf here on how they gave rise to turtle graphics and thence the sprites that are so important in computer graphics, and here on their current most advanced hardware descendants, the Mars Rovers. It is worth looking at UAVs here and on remotely operated submersibles [often, ROV]  here also. This press release from India on creating its first remotely piloted submersible points to economic potential.)

Turtles, then, are directly related to the Mars Rovers, to robot pallets in factories, and -- with extensions -- to remotely piloted submersibles and unmanned aerial vehicles (UAVs). That shows their industrial utility. And of course, it is not too hard to see such a robot being tracked or even a walker instead, or seeing sensor antennae/stalks with cameras or feelers etc being put on a more developed device, as well as guided manipulator arms with tool tips and end effectors. (Cf. more analytical discussions here, here.)

From this perspective, we can see that an elongated bird neck, head and beak is in fact a turtle robot with a single arm (with built-in sensor turret) and two-finger gripper!  So, we could envision a sort of mechanical chicken as a walking robot, and adding goose wings and elongated neck, we have an architecture for a flying/walking/diving turtle "robot" with mechanical arm:

A suggested "bird bot" based on a turtle chassis
Going beyond, we can even see the possibilities for a von Neumann-type kinematic self-replicating universal constructor as a universal manufacturing cell, which can "sit" on a turtle-type base:

NASA's vision of a vNSR self-replicating universal manufacturing cell.

 Merkle explains why NASA is deeply interested in this sort of technology:
[T]he costs involved in the exploration of the galaxy [or even our solar system]  using self replicating probes would be almost exclusively the design and initial manufacturing costs. Subsequent manufacturing costs would then drop dramatically . . . . A device able to make copies of itself but unable to make anything else would not be very valuable. Von Neumann's proposals centered around the combination of a Universal Constructor, which could make anything it was directed to make, and a Universal Computer, which could compute anything it was directed to compute. This combination provides immense value, for it can be re- programmed to make any one of a wide range of things . . . [[Self Replicating Systems and Molecular Manufacturing, Xerox PARC, 1992. (Emphases added.)]

Focussing on the individual unit:
A self-replicating universal constructor
As is discussed in the associated IOSE origins science survey course:

therefore, following von Neumann generally, such a machine capable of doing something of interest with an additional self-replicating facility uses . . .

(i) an underlying storable code to record the required information to create not only (a) the primary functional machine [[here, a Turing-type “universal computer”] but also (b) the self-replicating facility; and, that (c) can express step by step finite procedures for using the facility;   
(ii) a coded blueprint/tape record of such specifications and (explicit or implicit) instructions, together with   
(iii) a tape reader [[called “the constructor” by von Neumann] that reads and interprets the coded specifications and associated instructions; thus controlling:   
(iv) position-arm implementing machines with “tool tips” controlled by the tape reader and used to carry out the action-steps for the specified replication (including replication of the constructor itself); backed up by   
(v) either:   
(1) a pre-existing reservoir of required parts and energy sources, or   
(2) associated “metabolic” machines carrying out activities that as a part of their function, can provide required specific materials/parts and forms of energy for the replication facility, by using the generic resources in the surrounding environment.
Also, parts (ii), (iii) and (iv) are each necessary for and together are jointly sufficient to implement a self-replicating machine with an integral von Neumann universal constructor.

That is, we see here an irreducibly complex set of core components that must all be present in a properly organised fashion for a successful self-replicating machine to exist. [[Take just one core part out, and self-replicating functionality ceases: the self-replicating machine is irreducibly complex (IC).].
This is of course quite directly related to the vexed debates on origin of life (starting with Paley's suggested self-replicating, time-keeping watch) and wider exchanges on the scientific warrant for the inference to design on IC and on other similar signs of design. While these are interesting, they are not a primary focus here.

Our focus here is that a vNSR universal constructor is potentially a key component for industrial transformation, not just for solar system or galactic exploration. For, with associated open source modular construction technologies from say the Global Village Construction Set -- envisioned, ultimately, as a "one DVD' "civilisation starter-kit" --being developed by Marcin Jakubowski et al, we are looking at the potential to transform the architecture and economic systems of manufacturing. 

Such a transformation would lead to breaking through the value added divide, whereby third world countries are by and large locked into extraction or basic agriculture and raw materials export models. We then have to provide additional services like tourism, to be able to afford the value-added products from the advanced countries. 

The resulting fragility of our economies here in the Caribbean is notorious.

Jakubowski et al pose a different possibility, by creating the GVCS:
This is a program for technological leapfrogging, distributive economics, and closing of the industrial divide between the haves and have-nots . . . .
By weaving open source permacultural and technological cycles together, we intend to provide basic human needs while being good stewards of the land, using resources sustainably, and pursuing right livelihood. With the gift of openly shared information, we can produce industrial products locally using open source design and digital fabrication. This frees us from the need to participate in the wasteful resource flows of the larger economy by letting us produce our own materials and components for the technologies we use. We see small, independent, land-based economies as means to transform societies, address pressing world issues, and evolve to freedom.

So, why not see -- seriously try to see -- if we can break the digital/ technology/ haves vs have nots divide cycles? 

Couldn't such a breakthrough help transform prospects for our vulnerable small island developing state economies in our region?

Why not have our science, computing and engineering faculties in the wave of existing and emerging universities and colleges lead the process, turning their publicly funded and philanthropic support and grant financing into a stream of valuable open-source hardware and software product initiatives that can then feed into community development, agricultural and industrial initiatives?

Commercial enterprises could then get into the act by providing value added support, products with extra plug-in capacity, and services. (This would be similar to the software model where for instance Linux and Android form ecosystems in which application projects build in value that consumers are willing to pay for.)

And, the key technical people in those commercial initiatives would come from the same universities. 

Indeed, why not do a prize programme where the most promising student or staff practical projects in any given academic year are given places in incubators with seed-grants?

Where also, we could develop a network of business incubators and small business finance and venture capital schemes to help fertilise the process.

But, we are leaving off a key side . . .

For, as Jakubowski implies, agriculture, too, comes within the purview of this transformation.

A good first thought is in a magazine article by Luke Iseman, on an urban mini garden managed via an open-source microcontroller, the Arduino. 

In his own words from the article:
My Garduino garden controller uses an Arduino micro-controller to run my indoor garden, watering the plants only when they’re thirsty, turning on supplemental lights based on how much natural sunlight is received, and alerting me if the temperature drops below a plant-healthy level.   For sensors, the Garduino uses an inexpensive photocell (light), thermistor (temperature), and a pair of galvanized nails (moisture).  You can use a Garduino to experiment and learn what works best in your garden . . .
As the diagram at the linked article reveals, the garden in view is a demonstration-scale project:

A demonstration microcontroller managed garden
But obviously this can be scaled up to say a small farming plot with microcontroller driven drip irrigation, plastic or straw mulching, etc. Onward, this points to high tech backyard gardening, or small scale commercial farming of strategically chosen cash crops.

The underlying technologies for all of these could plainly be incorporated in a basic programming course and in a basic controls-oriented electronics for all course that extends that, as has been envisioned as a basic tentmaking technology sequence for the proposed AA CCS.

But, more importantly, the onward context of capacity-building for potential industrial and economic transformation of our region -- and for other regions across the third two-thirds world -- should be plain.
So, let us again ask: why not now, why not here, why not us? END

No comments: