Hi friends, I want to present an important project that has come up during my project of building from scratch a sailboat model. I use this project as the platform to engage in the most diverse fields and here is one of my babies!
I started with my sailboat project when it started to get evident that I would not get hired for any new job and so I searched for a project that would not demand much cash and that would help me to have my days filled with activity and by keeping my brain active to succeed to master this difficult condition! I used to build sailplane models as a kid and during my time at the university, but those crash and that implies the need for money. Ships do not crash, worst case sink in a pod at a close lake and so are recoverable. I had very little knowledge about sailboats and so i purchased a plan and start to build from scratch. here a picture that shows how that boat is going to look like some day in the future:
This second picture shows the sheet implementation as I want to make it happen on my sailboat Model!. In this model the technique used in the original sailboat, the Endeavour, is only fake as the sheet that goes from the deck to the boom at the very rear is what really controls the sail. In my model I need to be able to support 8400 mm of sheet length change so that what the next picture shows is achieved!
So this kind of "winch" capable to handle a sheet length change of 8400 mm in a sailboat were the hull is just 1650 mm long builds around electronics to establish a control scheme that uses a stepper motor as actuator. I have created a block diagram while trying to enable others to understand what the hack I was talking about!
Sorry for the text the drawing being in Spanish, but allow me to explain to get the picture!
This sailboat model, I will call it from now on Carina, is radio controlled. So some place at the border of a lake am I with a R/C transmitter. This used to be i.e. a 40 MHz R/C transmitter that poled the status of its controls and send them to a receiver in the model which received this 40 MHz signal and delivered at its 8 ports, called channels, a PWM signal that had a duty cycle of approx. 1 to 2 ms and all 8 channels repeated that PWM every 20 ms. So the left most box is this receiver were up to 8 cables carrying the signals of the 8 PWMs were connected to GPIO-Pins of a controller. In my case it is an LPC1769 on an LPCXpresso 1769, the second box from the left.
The board having the size of 35 x 140 mm, of which a bit more than half is the size of the target board that will be installed into my model quite a few of them! Now the diagram shows the block diagram for the control of two sails, so to the right from the second box there are two identical branches of which I will go in detail into the upper one, but you know the lower one is identical!
Now, with the 2.4 GHz based technology for R/C a dramatic shift has become possible. The products, R/C sender and receiver are not really anymore such, but both units are communication wise identical units of receiver AND transmitters! As this could affect the biz of the players in this market they still market those units the traditional way as sender and receiver to reflect what is in the users hand at the lake side and what is in the model! In reality we have a full duplex serial data stream into which the sender codes the data and the receiver decodes it. Today vendors cash by selling "telematic features" and high prices and really not taking advantages the new technology offers.
My picture of the "sender" in the future is a device that is build around a android tablet and that used the same "multifunction display technologies" that are used in modern aircraft, combining this with the physical control elements that have rightfully established themselves over the decades! my vision is a 10" Androind tablet display build into a box with the 2 control sticks to is sides as any sender has and a reduced set od switches and rotative controls aligned adequately on either the top side of the display and eventually also on the bottom side.
The display consists of a main "active window" to which the physical control elements of the sender can be relate to dynamically and that contains all data and required and multiple small "Icons" or "Windows" that give the important summary information. The user could click on such a small window and have it expand to the large active window and have the physical control elements dynamically assigned to it. Now on a container ship the controls could be linked to a crane and what ever other functions are related to this auxiliary window.
Even more you will probably want to have a video from a camera on your model be shown in a window on this display. Nothing simpler to accomplish for a naval modeler with electronic knowledge!
I will continue next time to present the additional parts of the block diagram and then relate this to the reason why I am adopting the "Desgn by Modelling" methodology probably using mathematica and systemModeler so that I can use components developed withn the "Modelica IDE" available for download at "OpenModelica.org", Here the Link to the download of the IDE for Windows.
The basic goal of the system to control the sheets that control the position of the sail is to make it possible to control the sail by the same means used on the original sailboat, the Endeavour.
All normally used methods to do this in a model sailboat are not applicable due to the huge amount of sheet length change required. There are a couple of mechanical reasons for this, but I will focus on the electronic control system that will implement my sheet control system! Critical are 2 factors. One is that if the available sheet length at any time is too big the sheet might get blocked by any object on the deck rendering the sheet control system out of order. The second is the limited detail control possibilities from the user at the side of a pond.
So the goal is to have a system capable of providing the sheet length displacement here of 8400 mm but have the intelligence local to translate between what the skipper wants and the combination of hardware and electronics and the model, my sheet control system!
Lets start with a graphic that represents the environment!
This very crude drawing shows the hull, the mast being the small circle in the middle and the 2 thin lines show simplified how the sheet controls the position of the boom between a center position up to a maximal 90° position! My system tracks the angle of the boom between the hull center axis and the boom actual angle by using a magnetic angular sensor.
This next rude drawing hopefully explains how I will achieve this! Again sorry for the Spanish text, even wrongly spelled! The boom, here named "Paolo", turns left and right from the center position shown in the bottom drawing. The boom is fixed connected to the axis, the small circle in the lower drawing, the vertical rectangle in the upper drawing. As a consequence when the boom rotates around the vertical axis, the axis turns with it and connected to the bottom end of the axis is a magneto that moves fraction of a millimeter above the desk surface, the long horizontal line. Below the deck surface is the magnetic angle sensor and the deck has an opening here covered by a thin plastic foil, ensuring that water cannot enter the hull here and destroy the sensor and using a plastic foil the magnetic field generated by the magnet is not interfered with allowing the magnetic angle sensor to do his job. I will have to investigate how large that opening has to be so that the sensor can do its job.
In this picture you can see the characteristic of the magnet to be used. Its pole are not in the upper and lower half, but in the way shown in this picture. The axis in grey will be the one I have described earlier. The sensor has 2 ways to make the sensed angle available. One is the digital way by what is called quadrature encoder and reflects the incremental angle change sensing:
Here the sensor generates 3 PWM signals called "A", "B" and "I". The graphic shows how the 2 PWM signals are used to sensor the steps of the angle sensed. The steps represent an angular change that reflects the angular resolution supplied by the sensor and made available through its quadrature encoded signals. The sensor that as of today offers the highest resolution allows to detect 11 bits, or 2048 steps per 360° full turn. As I only am interested in the 90° either left or right from the center line of the hull and for the sheet control system it is irrelevant if the boom is turning left or right from the center line, only 1/4 of the steps or 512 which cover those 90° are relevant. To get a feeling of what this means for my sheet control system as design for my sail boat model, here some numbers:
90° / 512 = 0.176° resolution per step.
8400 mm / 512 = 16.41 mm sheet length change per step!
So if you consider this resolution on one side you can confirm it goes far beyond what an operated can control from the coastal line of a pond! But if you consider what this means in terms of the change in sheet length, 16.41 mm it is adequate to prevent problems due to too much sheet hanging around!
The third PWM, called the Index or just "I", is signaling each full turn, so that the incremental angle sensing can track multiple 360° like the happen on a continuous turning motor or in my system the stepper motor turning the sheet drum! Now it is important to know that the LPC1769 contains a quadrature decoder peripheral on chip which together with the associated drivers available within the LPCOpen library allows to have the control independently monitor this 3 signals and provide the information in a number of ways I will not go in depth with right now!
Here the second way the sensed angular data is made available by the magnetic angle sensor. It is called the absolute magnetic angle sensing! Here the resolution available is much higher, 14 bits or 16 * 1024 = 16384 steps per 360° full turn, but has no provision to handle multiple turns. The data about the absolute angle information can be read in parallel to the ABI PWM signals by using the SPI bus. The rate at which SPI bus can supply absolute angular position information easily allows for an update 4 times per ms! Experiments will have to find out what reading rate makes sense from the use of such monitoring information and the load this implies on the LPC1769. Wonderful experiments I am looking to engage with! The SPI also allows to program none volatile setup information which is critical when preparing the sailboat model at the ponds site! I plan to have the Magnet on the axis turning with the boom be turnable. So when setting up the sailboat y can place the boom in the center position, have the sheet drum shorten the sheet until it is tense, possible as i can track the load by monitoring the current flowing to the stepper motor and so detect when a certain amount of tension indicates the sheet is at hits shortest with the boom in the center position. Now the software can store in flash or EERAM the position of the stepper motor being position "0". At the same time I can turn the magnet until the sensor activates the "I" PWM and associate to this value the "0" position of the boom. When the "I" signal happens an LED light would inform me by getting active. I would repeat this exercise by moving the Boom to the center position once from both sides and so the software can compute the real center position absorbing the effects from uncertainties of what the real center position is. Every time the boom crosses the center position, angle 0° the software can detect if any errors have happen and correlate its internal position software counters preventing errors to build up!
But what is more critical than this kind of basics are details of the system operation that I have come it while reflecting about this system and advises I have received from experienced naval model experts about why my system is not going to work! On top of this, remember the system is battery powered, i have to ensure I setup and configure the system with the goal to achieve optimum energy efficiency. But lets go step by step, but just mention, that when getting into details as I do, the aspects to consider in a design of such a system make the achievement of optimal solution by experiments and their iteration impossible to achieve. On top comes the aspect that dealing with this issues in itself is a fascinating activity and understanding the details and their implication is also something that motivates my actions! Just being at a pond site and operating my sailboat model from the shore is a perspective that would be boring on the long haul, while this activities will keep me busy until either my brain prevents me to continue or GOD or the Demon call me to its present.
I became aware of a detail that forced me to consider it in my design as it could be fatal. On the other side it opened doors to an energy efficient operation of my sheet control system.
Lets look at how my sheet control system operates:
1. The user at his R/C sender controls the position of the sail by moving a control stick into a position between the stick being at the bottom end and the trimmer control also on the bottom end, here the sails are supposed to be in the center position and the other extreme, stick and trimmer at the top most position, here the sail would open to an angle position close to 90° from the hull center line. The position of the control stick is reflected in the length of the active duty cycle of the PWM signal at the associated channel at the receiver in the model. The length of this system is somewhere between 1 ms and 2 ms in length. 1 ms corresponding to the controls on the extreme bottom end, 2 ms on the extreme top end.
Now in the control a "pinchange" interrupt is trigerred on the rising edgle of this PWM sigmal, the ISR, interrupt service routine activates a counter that is clocked at a rate that is configurable, it changes the "pinchange" interrupt settings to execute the interrupt on the falling edge of the signal and returns from interrupt to have the controller available for other tasks. after a time of up to 2 ms the falling edge of the PWM signal happens at the GPIO of the LPC1769, the ISR is started, it copies the counter value to another register, stops the counter and resets it and returns from interrupt.
The result of this is a numeric value whose size depends onto what clock rate I have configured. The following crude drawing is of help to the understanding:
The Spanish text is close enough to English so you should have no problem in understanding it. As you can see in the bottom green bar i have assumed a resolution of only 64 positions of the control stick to reflect that even the most sensitive operator has very limited ability to consciously control the control stick to a higher resolution. But the reality is that to manage the "fine tuning" of the control stick at the R/C transmitter a higher resolution is required to manage the trimmer position. 64 positions are referenceable with just 6 bits of resolution adding 2 bits more for an 8 bit resolution or 256 possible settings would allow to have the trimmer work 4 times more sensible that the control stick assumed with just 64 positions. The reason why this number of positions I am trying to keep as low as reasonable is that I have to associate a one dimensional array in none volatile memory in the LPC1769 with the number of elements equivalent to the number of positions of the control stick monitoring. Too high a resolution is also not good, as this could imply that the sheet control system might detect changes in the position of the control stick which are just the result of a jitter in the values transmitted and not a real change! This would result in unnecessary actions within the sheet control systems that had no practical value and that would increase energy consumption.
So the second block from the left of the block diagram of my sheet control system in charge of this, a LPCXpresso1769 board will have the duty to only pass the information about a change in the position of the control elements in the R/C transmitter when a change happens, otherwise the next LPCXpresso in charge of controlling the sheet length, in the block diagram called "Control Winche, LPCXpresso1769" would be too often using the I2C bus and communicate with the previous LPCXpresso board with no value resulting! So the second block from the left called "Central" and referred to by this name from here on has the duty to monitor the signals coming from the R/C receiver in the model, maintain the information in the arrays associated with each of the up to 8 channels of the R/C receiver. it would make sure that only changes relevant and so above a certain threshold of change would actually lead to an update of the content of the data in the corresponding array, another name to explain its function would be table with here just 1 column! Such an update would imply to pass the data to the corresponding LPCXpresso1769 associated with this channel from the R/C receiver. In our case the upper chain of blocks in the sheet control system diagram. This way the number of data communication events over the I2C bus would limited to the absolute required minimum and prevent further actions down the stream!
It is meaningful at this place to mention that the LPCXpresso1769 named "Central" has not just the function to control the 2 subsystems related to the control of the 2 sails, but also other subsystems I am going to have available in my model. So the Central has one port, this are usually 8 GPIO pins to which a single "PinChange" interrupt is associated, to which all 8 signals from the 8 channels of the R/C receiver are connected. When the associateed ISR is invokeed by an event of a rising edge on one of the 8 GPIO-Pins it reads a register that enables it to identify at which of the 8 bits the event took place! Its important to mention that the 8 PWMs from the 8 channels of my "robbe Navy F14" R/C system do happen one after the other is finished, so the scheme described here is adequate. Should they be allowed to happen in parallel the ISR would work a bit different but still be applicable!
We now go in detail into the analysis of the operation of the LPCXpresso1769 in charge of the main, the upper half of the blocks in the diagram called "Control Winche", for short I will now call it "Control Main".
Control Main has a copy of the one dimensional array in the central and keeps it updating as new information due to change of the position of the control elements on the R/C transmitter by the user. If such an event of change by the user happens Control main will react by having the actuator part of my sheet control system have the so called "Maximum Position" variable updated. This variable reflects the wish of the user up to which angle he wants the sail to be able to open. I am intentionally phrasing the sentence this way, as the sheet control system adapts the sheet length in relation ship to the "free movement of the boom of the sail" as long as the angle between the hull center line and the actual boom opening angle monitored by the magnetic angle sensor is smaller than the "Maximum Position" set by the user operating the control elements on his R/C transmitter. It is key to understand my sheet control system, that it follows the position of the boom of the related sail, here the main, turning adapts the available sheet length to fit the actual boom position, but not preventing the boom from moving freely, as long as the sail opens less than the maximum permitted by the user! Here comes the need to describe the monitoring of the actual boom angle position which we learned that the incremental detection reported to the "quadrature encoder peripheral" within the LPC1769 by the means of the 3 PWMs ABI tracking 512 positions of the boom over the up to 90° the boom can turn to either side, which operates independently from the other operations the LPC1769 might be doing! i have presented this in the previous contribution referring to the AMS0047D rotational encoder from Austria Microsystems, short AMS! I will buy this device as late as possible, as the technical development here is taking place at a very high rate and there might be a better one in the market by the time I really need it to start experiments!
I repeat inserting this drawing here so you have it in view to understand the concepts. The Control Main gets on its ABI pins associated with the peripheral "Quadrature Encoder" the 3 PWMs ABI. When I setup my model at the pond site i place the boom in the center position, have the sheet shorten to the maximum possible controlled by monitoring the load on the sheet and such limiting the tension to a configurable value. Clicking on a button available on the model the Control Main registers the sheet length associated with the booms center position and sets the variable for the "0" position variable of the stepper motor control software to the "Minimum Sheet length". Next I turn the magnet on the axis associated with the boom of the main until the I signal is active from the angular sensor in the quadrature sensor peripheral of the LPC1769 on the Main Control board, once coming from the left, once from the right, indicating this by lighting a LED that indicates to the user that he has turned the magnet to the right position. By doing this twice coming from both sides the software can document in variables at which value of the position variable the Index signal of the ABI This is key to be setup every time the model sailboat, in short I will call it from now on Carina.
The main Control board tracks the actual position of the boom of the main sail by using a "position variable maintained by the quadrature encoder peripheral that works independently from what the ARM Cortex M3 within the LPC1769 does. Now to the problem that demanded extending the functionality of the sheet control system and the angle position monitoring. Imagine the sail and its boom are moving at an angle within the boundary set by the user documented in the value of the variable "Maximum Position" maintained by the Central and passed onto the Main Control when a relevant change happens. The length of the sheet is adapted to the actual position of the boom by a part of my sheet control system I will introduce later. This means that the sheet length due to the actual position of the boom within the range permitted by the "Maximum value" set by the user through his control stick will prevent the boom to open more as the available sheet length stops the boom from opening more! How can I implement that the boom can open further, as long as the limit set by the user is not reached!
Here I have come up with a scheme shown in the above drawing that takes advantage of the higher resolution available from the absolute position monitoring capabilities of the sensor ASS047D. This sensor can detect an angle with 14 bits for a full 360° turn by having the LPC1769 read via the SPI bus the 14 bit resolution values of which as explained above only 1/4 is available for the 90° range the boom opens to either side or 4096 position or 8 positions where the ABI just report a single step! Assume the ABI has monitored that the booms actual position is position "X" and the Control main has made available the sheet length related to position "X". Now lets assume the boom continues opening and increasing its opening value by moving in the direction of the "X+1" position but it cannot reach it, because the sheet length made available by my sheet control system prevents it from doing so. So if I do read the absolute position information from the sensor via the SPI bus I/F I can detect how the boom is moving by increasing its angle as there are 8 additional "steps" monitored by the absolute encoder resolution and so track up to 7 positions in direction of the "X+1" position of the ABI system. I defined "thresholds", here called "umbrales" defining an upper and a lower threshold always a determined number of absolute resolution steps to both sides of the actual position "X". I choose the wrong names for the thresholds oin the drawing, is just opposite as drawn. So when the boom reaches the "upper threshold" the software changes the current value for the current boom position according to the incremental information from "X" to "X+1", proving prior to doing so that "X+1" is still smaller than the maximum value permitted by the user. Changing this value makes the sheet control system adapt the available sheet length as corresponding to the "X+1" position. Now the boom can continue to open until the upper threshold of the "X+1" position is reached and the repeat the process until the actual boom position reaches the limit set by the user at his R/C sender!
Now it is easy to understand that how the resolution is set for the incremental boom angle monitoring reported from the sensor by the API PWMs and choosing the proper thresholds settings in relation to the actual boom position has an important impact on the power consumption of the sheet control system as the stepper motor needs to be activated every time the boom moves from a position "X" to a position "X+1" or "X-1".
So the reason I want to apply the methodology of designing, modeling, simulating and measuring the real data from the sheet control system by means of the "hardware-in-the-loop" and "software-in-the-loop" and finally optimizing the software and the parameter values i.e. towards achieving optimum energy efficiency to my believe cannot be achieved and not even completely understood without using the methodology of design by modeling, topic of this thread.
let me conclude this contribution by reflecting the topics of it against the block diagram of my sheet control system. basically so far I have presented the background information about the environment in which my sheet control system will operate and have additionally explained the blocks starting from left starting with the R/C receiver in the model, continuing with the Central and the interaction with the Control Main as being the upper of the two branches shown in the diagram. I have further presented how the user controls the value as to which angle maximum the boom of the main sale is allowed to open, how the information about the actual angle of the boom of the main is in relation to the center axis of the hull and how the sheet control system will control the sheet length according to the actual angle information provided via the ABI I/F to the quadrature encoder peripheral of the LPC1769 within the Control Main board. i have added as to how I can adapt this system to fix a identified possible fatal problem by taking advantage additionally of the absolute angle information with 14 bits of resolution available within the ASS047D magnetic angle sensor via reading the value using the SPI bus. i have briefly mentioned that even as I have spend tons of time reflecting over the implications of my design I have concluded that many main problems could still be hidden to me and that setting software and parameters properly will allow me to achieve energy efficiency. I have finally concluded that just reflecting over it or just using experiments would not be enough to detect design problems and to set the system up in such a way that energy efficiency can be achieved to a value much closer to the optimum, key for a battery powered system!
Open to complete the task description of the goals and the environment in which my sheet control system will operate and where the design by modeling methodology will be applied is the description of the remaining blocks of the diagram that means that how the Control Main LPCXpresso1769 board will control the stepper motor and monitor the sheet drum position to adapt the sheet length to the values demanded from a changing actual position information coming from the incremental angle monitoring subsystem and reflected in the values of the parameters within the Control Main subsystem.
To have the pictures available while you study my report i am inserting here the picture of the block diagram of my sheet control system and the drawing of the chain of position tables that drive my sheet control system:
The block following the one named Control Main is called stepRocker and this block represents the actual stepper motor control circuit that the company "Trinamic" and that is available for purchase a a moderate rate also in the UK and I have just for simplicity presented the offering of this board by the distributor Digi-Key. Actually i will use another board from Trinamic of which I got hold of a preliminary sample and which will probably become available soon a bit modified as Samsung, who supplied the ARM Cortex M0 die has decided not to support any further the industrial controller marketplace. i have heard rumors about what company will be supply the controller in the future. The reason for this is that the stepRocker is limited to operate up to a supply voltage for the stepper motor of 25 VDC and in my model I use 12 LiFePO4 batteries connected in series which provide a tension between 40 VDC approx. when the batteries are fully charged and 24 VDC when discharged to the maximum allowable without damaging the battery cells. A board that used to be called "motionCookie"
can handle up to 50 VDC. The next block to the right is the actual stepper motor, here I show a video that I recorded that shows what speed the stepper motor can achieve setting up the rich set of parameters controllable via the Trinamic IDE for which I have made available the link to the download page of this free IDE. it is worth to mention that the company Trinamic really i would dare to say is the most advanced company in terms of developing and making available components and boards to control stepper motor. If you go to YouTube and search for Trinamic you will be able to see the wealth of information they present about the functionality of the parameters they make available to control stepper motors.
The video I made as part of my initial experiments demonstrates how fast a stepper motor can rotate when supplied with just 25 VDC using the parameters optimum settings as made possible by the "stepRocker control board. If you know about stepper motors you know that stepper motors are to be used when rotation speed is relatively slow, as the induced voltage that has the opposite polarity to the applied one adds to reduce the effective voltage and as a consequence the available amount of torque gets down to were the stepper motor stops working. In this video to my surprise the stepper motor achieved tremendous speed, reason why the video is relatively long. So this video shows the stepRocker block in my diagram as well as the actual stepper motor of which I will be using 2 in my model. The stepRocker, as does the motionCookie, are accessible via RS485, what in a way is just a simple serial I/F with differential buffers and an additional signal that allows to use it as a bus. The protocol is not part of the standard.So my Control Main LPCXpresso1769 board will communicate with the motionCookie or stepRocker via RS485, as the environment within the Carina will be electronically speaking loud! The Link will just be a Point link so no provisions are needed for other bus clients! The motionCookie, as does the stepRocker shown has a ARM Cortex M0 on board that makes available a high level language that hides the complexities of the control of the stepper motor and the components on boards while offering power high level features like the mentioned S-Ramp shape to implement the acceleration and deceleration otherwise trapezoidal speed profile when a stepper motor moves from one position to another.
Serious health problems have kept me from advancing my project as I would have wished to do. Lets try to summarize the key elements of my project of building electronic systems to implement functions desired for my model sailship. To get the reason for this structure you will need some background information:
1. I have lost my job during the internet crisis around the millennium change and after a couple of years it became evident for me that I would never get hired for a job as the one I had before. So I decided to embark a project that would make it possible to keep my grey cells between my ears occupied and so help to fill the time with goal oriented activities. of course i did what many in the high tech industry do under similar conditions, I became a consultant and I also did technical translations and interpreting jobs. So I started building a model sailboat as those do not crash as planes do and so my investments would be maintained.
2. I started building the model doing work with would, aluminium and brass and so I started to make my workshop with its highlights being a milling machine and a lathe machine with all the stuff that you need for it.I expanded my work to fiber glass for coating. Last but not least I got to know the world of sailboats and sailboat models.
3. Having seen how impressive driving the boats by night are due to the lights on board. So I started to learn about LEDs, how to dim them from radio control and learning about normal LEDs, surface mount and through hole devices and much more interesting the difference and consequences when expanding into high brightness LEDS and the problems there of heat dissipation. Here I started to embrace the activity to add to my workshop an electronic workbench as I started to learn about doing my own PCBs, learning about dealing with solder paste in electronics and building my own reflow oven based on a pizza oven. The interesting devices did come in challenging packages going from 3 x 3 mm^2 ones with 9 pins up to big SMT devices with 100 and more pins, having a distance from center pin to center pin down to 0.5 mm. So I dealt with making myself a tool to place solder paste on the individual pads and using the same tool to place the device in such a way on the pads that no shorts would happen (at least chances good no bridges were taking place between neighbouring pads! A project worth to report in its own right. I needed having a device to pass circuits printed on a transparent foil onto a photosensitive PCB, exposure was done making a tool based on a facial tanning device from Philips purchased at ebay for about 10,- Euros including shipping. I also had to deal with getting the heat generated at HB-LEDs away. So I started to learn about the issues to use PCBs with aluminium core. At that time the technology was not yet properly managed by suppliers of such PCB material. A supplier who got my file with the layout was unable to generate good PCBs. From the stuff he send to me I could at least get enough PCBs for the HB-LEDs I was planing to use. Another story worth its own thread.
4. Having worked in the semiconductor and telecommunication industry for large US companies I started my career on technical assignments and over time I had to switch to managerial activities and jobs, well paid! So due to the activities related to my sail boat model ship presented under point "3" I decided to get into the study and experimenting using microcontrollers and found out, with a friend of mine, that decoding the PWM, how simple and in consequence powerful it is to have a uController, in my case a mega8 AVR from Atmel decode the PWMs and having it digitized use it to implement electronic systems to do what I wanted to achieve based on the inputs from the user at the transmitter of a R/C system. Obviously having discovered this I became ambitious in what I wanted to accomplish. The basic compiler BASCOM had many special instructions that took of the load from implementing proper drivers and functions. Also this friend developed and published a tutorial to build what we called "Experimental Board" starting from a schematic. The goal was to have the people learning loosing the fear to deal with schematics and to build their own board starting from the schematics. So the tutorial was broken down in to small pieces easy to accomplish and to see something as a result to keep motivation up. So the people started by building their own programmer for the flash in the microcontroller. Then they started with the actual experimental board, just building the function of generating the 5 VDC using a 7805 with a diode to prevent damage from applying wrong polarity and an LED that lights up when power is applied. Hardware modules went along with software modules to use the function of the hardware modules, or the peripherals on chip and so on. Emphasized was that the modules were "building blocks" that properly combined could used to develop all kind of electronic solutions for the creative naval modeler, kind of Lego-stones! But what also was very useful was that the people in those exercises learned to verify and debug the hardware modules build. This way the person not only lost his "respect" for schematics and for their "hardware implementation", but they got a deep understanding of the schematic and its hardware implementation while debugging their board. The board was build on a raw thru hole PCB and connecting the pins on the rear side of the PCB with cables. The software helps as it allows to "play" and so start being creative!
5. I decided to use a stepper motor as a winch opposed to using commercially offered winches as none of them was able to manage the sheet length change required for my model as presented in the top of this thread. For my first tries I used the famous L298/L297 parts to powered my stepper motor applying 12 VDC and full steps. I started to believe that I was dummy as I was not able to get the stepper motor to work! Later I used a board called "stepRocker" that is commercially offered in the market using the components of a fabless semiconductor company called "Trinamic". Here I found out the the stepper motor I planed to use did only work when microstepping it at at least 16 microsteps per full step with 12 VDC. I have published tutorials that present aspects of the stepper motor technology and its operation parameters. Again a thread of its own by its merits.
6. Having the knowledge gained by the experiments with the stepper motor and the stepRocker control board I started to develop the concept of my "sheet control system" and published my thinkings about it. The outcome was very interesting! Experienced naval modelers, experts in building sail boat models, responded that it had good reasons why nobody implemented a pulley as the own of the Endeavour shown above, because the friction between the rope and the sheaves of the pulley, 7 sheaves, would at a scale of 1:20 making it unable to operate! I also presented my thinking with focus on analyzing this friction to communities of physics and got equally partly aggressive and personal attacks, as there should be no friction between the rope and the sheaves! What a wonderful topic to study! So I started to investigate on top of my usual researches in the cloud how to embrace this challenge! In parallel my efforts in advancing my knowledge in first analog electronics, later in digital electronics as required in FPGAs and finally in implementing control schemes I found out that I would require to organize my knowledge and to deepen it. Now you should know that in Germany the universities are practically for free. What a chance when you have no job to take advantage of. So specifically the knowledge about control techniques proved to be subject, partly as part of the bachelor course of electronics and part being teached during the master. So I contacted the local university, we have two, the LMU or Ludwig Maximilian Universität and the TUM, Technische Universität München. Both universities with a great reputation. Showing interest for their courses I was granted access to their intranet and so I could investigate the courses that made part of their bachelor and their master courses. It became evident to me that my mathematical knowledge had eroded over the decades since I was a student at a university and also relevant advances had taken place not just in mathematics, but also in the use of mathematics in other courses. Nothing could be accomplished by myself in my objectives without refreshing and deepening my mathematical skills. After doing a lot of investigation in the internet I found out that the main early building block of the mathematics used in nearly all fields of interest to me demanded to go through the courses for Analysis and Linear Algebra, to start with! The resources found from german universities in the internet accessible for free and i.e. from the MIT in their "OpenCourseWare" offering made it possible to study not just the 2 disciplines of mathematics named before, but I could even choose professors whose style of teaching best fitted to my own preferences. Also helpful was, that I could see and apply what I am learning to topics related to my original project of designing my own sheet control system, but also that this knowledge would be essential to be able to use the tool "Mathematica and SystemModeler" from Wolfram Software, but also to tools like Matlab and Simulink, to which I have access at the company of a friend. Additionally to the requirement to have the skill demanded for the courses in the bachelor study of electronics, I also found that the same mathematical knowledge was required to study the physics as being part of the bachelor in physics. Now why study the mathematical topics as part of an electronics curriculum, or of a physics curriculum, if the study of those courses were also part of what is the bachelor of mathematics.
Effectively I found an offering for "Analysis" from the university of Tübingen and there it was based on the course for Analysis from Terrence Tao from the UCLA "with honours", that best fitted myself. The book from Terence Tao is available for free as a PDF at the homepage of Prof. Tao. During an information day at the TUM Institute for Mathematics I had the opportunity to talk to a mathematics professor and I shared with him why I was so fascinated of the teaching style of professor Tao as it started from the simple dealing with natural numbers and build up both the mathematical think skill and the doing of mathematical proves in a very consistent manner. The professor let me know that since a couple of decades the mathematical world had changed to having more focus on mathematical structures. Back at home I started to investigate what he told me and so I did learn about the existence of a wonderful mathematical world of mathematical structures and found an interesting offering from the university of Nuremberg, where a professor taught in theoretical physics a course of mechanics based on applying the strength of the mathematical topology manifolds. His first 2 lectures recorded and made available gave an overview over his full course and how, starting from the most general definition of topological manifolds he used special kinds of the as he moved though the mechanics physics course including quantum mechanics and relativistic mechanics.
All those results of my research made me feel what I called the "mathematical analfabet" or the "mathematical legasthenic". Really without a certain skill set of mathematics when reading scientific material I do feel myself as a classical analphabet who can just grab the pictures but not really getting the topic. I wish I would be just 20 years old and had plenty of time to dig into this wonderful worlds.
Know I have been suffering serious health problems that made me aware of, that probably my project will be left unfinished much earlier than I had hoped for. But the optimistic attitude I have by having the opportunity to delve into this topics as a consequence of my sail boat model project and as a result my persistence in using my brain to learn so that I can apply all this to my project will result in my best possible contribution to overcome my health problems or at least to have the time until finally leaving best used!