热度 27
2014-11-3 19:02
1556 次阅读|
1 个评论
My degree is in Control Engineering -- a core of math with "surrounding subjects" of electronics, mechanics, and hydraulics and fluidics. The only official programming I did as part of this course was in FORTRAN. Once I was out of university, I picked up various assembly languages and programming languages (e.g., BASIC, Pascal, C, and smatterings of other languages) along the way. Now let's turn our attention to the Full Moon meter, whose purpose is to indicate the number of days to the next full moon -- an event with the potential for doom and despondency. There are lots of different ways in which we could have implemented this. Originally, I'd considered a fairly typical presentation showing (from left to right) the New Moon, the First Quarter, the Full Moon, the Last Quarter, and the New Moon again. In this case, the reticle would have been divided into approximately 30 days (more on this in a moment). Another idea was offered by EETimes community member csquared0. As csquared0 said: "I personally like analogue meters to display continuous events continuously, and not go to one end and snap back." I wasn't quite sure what this meant, at first, but now I understand it to look something like the image below. In this case, we have the new moon graphic on the left, the full moon graphic on the right, and the reticle would be divided into approximately 15 days (again, more on this in a moment). So we start with the new moon; day-by-day the needle gradually approaches the full moon, at which time it returns day-by-day to the new moon again. Also, several community members offered suggestions as to how we could indicate which way the needle was going, including the use of different-colored LEDs. The solution I actually decided to employ, however, is as shown below. In this case, the time of the new moon occurs 3/4 of the way to the meter's FSD (full scale deflection). Furthermore, the reticle is divided into 32 days, with 24 days preceding the time of the full moon and 8 days trailing it. Not to scale; the actual faceplate is only approximately 2" in diameter. An earlier rendition of this solution prompted EETimes community member zeeglen to share: "But I have to ask -- since the moon's synodic orbit appears to us earthlings as about 29.5 days, why does the meter scale have 32 days?" Ah, that's a great question. Well, this reflects the significant amount of thought that goes into this type of stuff. As zeeglen noted, the moon's synodic period is about 29.5 days, so let's round this up to 30. I want the reticle to be divided into four equal "chunks" reflecting the four quarter phases, but that would give 7.5 days per chunk, so I rounded up again to 32 days, thereby giving me four chunks of 8 days each. As an aside, an additional point I'd like to highlight while we're here is the textural treatment of "MAX" that we're using as a logo on all my meter faceplates. I think that this little beauty, which was created by my graphics guru chum Denis Crowder , who now hangs his hat in Hawaii, really complements the "meter" theme. As we noted earlier, most of my meters follow a progression from green (start or best case) to yellow to orange to red (end or worst case), which means dividing their scales into four color bands. In the case of the full moon meter, however, we can think of this more as a circular progression along the lines of green (farthest from the time of the full moon) to yellow to orange to red (the period around the full moon) to orange to yellow and back to green again. If we say there are 6 red days (3 before and 3 after the full moon), and if we then make the 5 days before and the 5 days after the red days into orange days, this nicely fills the right-hand half of the display. Similarly, we can have 6 green days corresponding to the 6 red days on the other side of the display, with 5 yellow days before and 5 yellow days after. The end result is -- at least to me -- satisfyingly balanced. The fact that the scale contains 32 days is of no consequence whatsoever. Visualize the pointer as being in the red zone during a full moon. Following the full moon, the pointer will move to the right day-by-day until we reach +8D (the meter's full scale deflection), where 'D' stands for "Days." At this point, the needle will swing back to the left of the display, but it doesn't have to return all the way to the origin (zero or -24D). Instead, it will only swing back to point to whatever number of days remain until the next full moon. But why did I opt to have the full moon at the 3/4 point on the reticle instead of the 1/2 way point or the FSD point? Well, this reflects another important facet of the design process, which is that you can’t think of things in isolation; instead, you really have to consider how everything is going to play together... The Full Moon meter is located at the left-hand side of the Inamorata Prognostication Engine's lower brass panel. The corresponding Blue Moon meter, which is located on the right-hand side of this panel, reflects the number of days until the next blue moon -- an event that is generally considered to be a time of positive energies and possibilities. As another aside, I'm going by the traditional definition of a blue moon, which occurs when four full moons occur in the same season. Usually there are three full moons in a season, each of which has its own name as follows: Full Wolf Moon (January) Full Snow Moon (February) Full Worm Moon (March) Full Pink Moon (April) Full Flower Moon (May) Full Strawberry Moon (June) Full Buck Moon (July) Full Sturgeon Moon (August) Full Corn Moon (September) Full Hunter's Moon (October) Full Beaver Moon (November) Full Cold Moon (December) In the rare case where four full moons occur in a season, the third is referred to as a "blue moon." So, just how rare is this event? Well, a blue moon occurs about once every 2.7 years. We won't go into this too much here; suffice it to say that -- as I know to my cost -- coming up with an algorithm to determine the date of the next occurrence of a blue moon is a task sufficient to make one's eyes water! But we digress... if a blue moon occurs approximately once every 2.7 years, then how are we to use an analogue meter to display the number of days until the next occurrence? Once again, I'm sure there are numerous ways in which this can be achieved, but the solution I opted for is as illustrated below. Not to scale; the actual faceplate is only approximately 2" in diameter. In this case, we don’t use a variation of the green, yellow, orange, and red color schemes characteristic of the other meters. There's no such thing as "bad" and "good" here, we're just closer to, or farther from, the next blue moon, so we reflect this in the reticle using different shades of blue. So here's the way this meter works. Let's assume that we start as far away as possible from the next blue moon around the -2.7Y point, where 'Y' stands for "Years." As the days and weeks and months go by, the needle will gradually move toward the -2Y sub-tick and then toward the -1Y sub-tick (these sub-ticks are shown as lines on the reticle -- they don’t have their own annotations). On the day after the needle has reached the -1Y sub-tick, it will move directly over to the -12M point, where 'M' stands for "Months." This means that the needle will never actually spend any time in the -1Y segment, but this segment is still necessary to make sense of the -2Y and -3Y segments. The needle now proceeds to work its way down through the months. In the final month, when there are only six days to go, the needle will move over to the -6D point, at which point it will commence to count down the number of days to the blue moon. I'm assuming that there is the possibility of some residual good fortune in the few days following the blue moon -- this meter shows up to +6D. (By some strange quirk of fate, I've always considered six to be my lucky number.) Originally, I'd planned on dividing the right-hand half of this meter into 30 days, but this looked somewhat crowded as compared to the other meters. Personally, I'm rather pleased with the solution I opted for as discussed above. The main point to focus on here is that the Blue Moon meter spans a large amount of time, with the interesting action occurring 3/4 of the way to the meter's FSD. This was the basis for setting the time of the full moon to 3/4 of the way to FSD on the Full Moon meter. I think the final result is a rather pleasing symmetry as shown below. So there we have it. There were a variety of other considerations, such as whether to use the '+' symbol with the annotations following a full or blue moon (I eventually made an executive decision that we would use this symbol), but I think we've covered all of the main elements. Going through this process, I've come to the conclusion that this sort of design is part art, part science. I think (well, hope) that you are going to be really impressed when you see the graphics for all of the meters in the Inamorata Prognostication and Ultra-Macho Prognostication Engines gathered together in a future column. Until that happy time, as always, I welcome any questions and comments.