Tuesday, July 19, 2016

First thoughts of a requirement engineer

So, how should TreppenSchlepper look like, what exactly should it do or provide? What are the mandatory requirements, what would be just nice to have, and what would be a killer if we forgot about it ?
The importance of good requirement engineering can hardly be overestimated, as it does a lot to define (and constrain!) the direction a project will go from then on. Even if done iteratively in an agile development process, someone better has a consistent, solid view and vision of what the system under development should look like. And defining such vision on non-functional requirements or "soft facts" might sometimes be even more important than getting all technical requirements right from the beginning.
So let's add some thoughts on the user interface (UI) and target costs.

First: do we need an UI at all? If it comes to path planning and climbing stairs, TreppenSchlepper should be fully self-controlled, thus autonomous. No human operator should be required to control its moves (please, please, no RF remote control like a toy car!). TreppenSchlepper shall detect and analyse its surroundings completely by itself, plan its path, control its movements, know when to stop, and therefore guarantee system safety at all times by itself.
However, we need a way to summon it to the place (e.g. floor number) where we want it to start, and tell it where to go (e,g, come to base floor, wait until I've placed my heavy bag, then carry it up to 2nd floor, then wait until I have recovered my bag). The obvious choice would be a smartphone app, communicating with TreppenSchlepper e.g. via BlueTooth. Is that a good idea also for people feeling uncomfortable with such gadgets? We might want to provide an alternative solution like a button on a wrist-watch (similar to the Personal Emergency Response System (PERS), but not that dramatic). Would BlueTooth provide sufficient transmission range to connect to TreppenSchlepper in a staircase, even if it is lots of floors away?  And, let's assume one wants to call (summon) TreppenSchlepper to a certain floor: we sure want it to detect automatically where to go; so how would the calling device (e.g. the smartphone) identify its current floor to send it to TreppenSchlepper (and vice versa)? Maybe a system of fixed BlueTooth stations acting both as location beacons as well as relays, forwarding calls, might help. Something like iBeacon, maybe? 


Next: Pricetag
A conventional stair lift in a museum in Berlin
TreppenSchlepper is intended to just carry things, rather then persons, at least in its initial incarnation. But it should be also much more flexible and easier to use than e.g. stairlifts, and should be more affordable as well.
According to https://en.wikipedia.org/wiki/Stairlift today's stairlifts start at 2000 - 4000 USD (and that is per floor!), even others suggest € 4.000,- to € 14.000,-,
Still keep in mind that this is for full person-carrying capacity. So I'd suggest an upper price limit for the described TreppenSchlepper of below 2000€, which might make it competititve, as this is independent of the number of floors to cover. 
Is that an achieveable price limit?                                    
                                                                                 



Wednesday, June 29, 2016

TreppenSchlepper System Control (1)

To be of real help, TreppenSchlepper shall be able to climb stairs and steer its way fully by itself. It needs to become an autonomous vehicle which plans, then follows its path to and along a stair fully automatically. If it assists a human user (e.g. carrying a suitcase) it shall anticipate her moves and act accordingly. Alternatively, it might be useful to have TreppenSchlepper go up or down without any accompanying person, which might be the easier option for the control algorithm to begin with.
Autonomous control shall guarantee the safety of itself as well as people and things along its way. Therefore it is required to identify passerby's or objects (like the proverbial expensive Ming vase) in advance. TreppenSchlepper needs to plan ahead its trajectory so it will not interfere with others, and to stay safe by itself at any moment. However, it might turn out that this is achievable within some restricted range only (locality), meaning that it might only be able to plan ahead within some time and spatial range due to sensory restrictions. We could well be forced to accept pre-assumptions which need to be done first, like an initial pre-scan of the whole staircase before TreppenSchlepper goes there first. This is in order to know that there really exists a safe path to go from start to destination, and that this path is reachable and usable by TreppenSchlepper. If system control finds no such path it should decide to remain at the safest place (likely the stair landing or platform ). If an unanticipated obstacles comes up (like some person just arrived, blocking TreppenSchlepper's way) it shall always be possible to pause and remain safely at its current position; of course this includes any place along its way within a flight of stairs.

So let's have a look at the inputs of TreppenSchleppers System Control

Sensors:

  • Environment: TreppenSchlepper needs to scan its environment, especially shape and orientation of the steps to climb, as well as objects and persons around. It might be useful to identify some aspects of the surfaces ahead as well, e.g. if it is slippery, or fragile, or otherwise "forbidden" (thus should be avoided to be moved upon).
    While we need quite high accuracy in close vicinity (wild guess:  +/- 2mm within 1 m perimeter), we might be OK with a reduced resolution of 1cm or so for the zone beyond vicinity,  as this might be enough for trajectory planning and updating.
  • Position: TreppenSchlepper needs to identify its own position within the scanned environment, especially in respect to steps of the stair currently climbed. In addition it needs to relate its position to more distinct points, e.g. to start and destination position, and other places of interest like the electrical charger station to fill up the battery when it is time.
  • Orientation: this is needed in addition to position for trajectory planning. To guarantee safety, TreppenSchlepper also needs to monitor its orientation in respect to the horizontal, and react if it is askew.
  • Weight: monitor weight of payload (or total weight) and stop if it gets to heavy.
  • Battery state (state of charge, temperature)
  • System state (temperature of E-motors, torque and wheel speed; this allows  to derive e.g. grip of wheels and detect overload conditions)

Friday, June 3, 2016

Energy Supply and Power management - first thoughts


For ease of use, TreppenSchlepper shall require no installations or any other modification in staircases whatsoever. It shall manage and steer itself, and that means it needs some fully autonomous control (which we shall discuss in one of the following blogs). For now, let's focus on the energy supply only. With no wires attached we need sufficient battery power, and a way to charge it easily. Would a Li-Ion battery pack like the one used in my Laptop do the job? 


laptop Li-ion battery
According to the manufacturers spec's, such battery packs store some 50 .. 90 Wh of energy with typically 11 V rated voltage; one can buy it at Amazon or other places for somewhere between 40 and 150 USD. I'd guess these batteries are pretty robust now, with life expectances of more than 3 years under heavy use, being quite sturdy against normal accelerations/bumps and temperatures and due to the large (Laptop) market quite mature and cost efficient already.
The battery on this picture (right) includes 9 cells, has 87 Wh of energy, and has a size of approx. 28 x 8 x 4 cm and weights about 200g (model number 451-11695)


 
Let's estimate the energy needed by TreppenSchlepper during a day, assuming overnight re-charge.

physical variable
estimation
Reasoning
Total mass
70 kg
50 kg payload + 20 kg System =70 kg
Number of floors to climb
5
first guess
Resulting height to climb
15 m
assuming 3m/floor
Mechanical efficiency
25%
wild guess
Required energy per climb
33Wh
E = m * g * h * eta
= 70kg * 9.81 m/s2 * 15m /0.25 = 41202 Ws =>  11,4 Wh

For going downstairs we would theoretically have a chance for recuperation, but certainly not with the current design. So let's just assume it requires downstairs 25% of the energy we put into it going upstairs.

This sums up to 11.4 Wh * 1.25 = about 14 Wh for a complete up & down cycle.

With 50 to 90 Wh at disposal, it should be safe to say that is enough for 3 to 5 times going up and down per day (or before we require re-charging of the battery).

Is that a reasonable estimation ? Let me know via comments in this blog, or directly via treppenschlepper@gmail.com

Friday, May 27, 2016

What is TreppenSchlepper

TreppenSchlepper is an open project to build a device which carries heavy stuff up and down stairs.

Hi, I am Peter, living near Graz, Austria.

from: https://commons.wikimedia.org/wiki/File:Humboldtstrasse18_OID_48889_1.jpg,  Creative Commons Attribution-Share Alike 3.0 Austria
https://commons.wikimedia.org/
wiki/File:Humboldtstrasse18_OID_48889_1.jpg
Do you know some person living at one of the upper floors of a building with no elevator? Having to carry up shopping and other heavy stuff day to day...  Some might see this as a good chance to get free exercise. 
But it might be pretty exhausting to all the others not in perfect physical health.  It is definitely a problem for elderly and physically impaired people. 
With TreppenSchlepper we work on an open, safe and cost-efficient design for a device which accompanies people, and can carry loads up to 50kg up and down stairs.



Join this project by sending me an email:  treppenschlepper@gmail.com !


File:Dominikaner Treppe.JPG
https://commons.wikimedia.org/wiki/
File:Dominikaner_Treppe.JPG


State of the Art: 
there are quite a lot of approaches already out there - just google "stair climbing robots". You will find lots of hits, from rather complex solutions, to patents like this,  to actually pretty interesting designs like the stairbot, or another design from UoMinnesota.
Maybe more mature solutions like the Treppenlift are available as well, but require quite some installation work and investments in the building.




 

 In contrast, TreppenSchlepper aims for a design which is
  • open (everybody can build, use and improve it for free). Products can be built and sold if you want. It is under CCBY 4.0 license.
  • ridged, safe and cost efficient 
  • can actually lift heavy loads (our current goal: 50 kg)
  • able to move along irregular stairs of any type (often the case in old city buildings, and might include e.g. spiral chairs) 
  • fully autonomous
  • battery powered, able to go up and down docents of floors during the day, recharge at night

The name of the project, "TreppenSchlepper" comes from Treppen (stairs, pl.)  and Schlepper (a tug boat) in German.

So far we have a first concept and a mock-up prototype.
Please join project TreppenSchlepper and contribute your expertise on mechanical, SW and HW  engineering!

For details, see the next Blog entry...



Join this project by sending me an email:  treppenschlepper@gmail.com !