Microwave project managing – week 1

Mechanicals

So the last week has been spent dom­i­nat­ed by get­ting my head around mechan­i­cals.

I had fan­tas­tic vis­its to three met­al stamp­ing man­u­fac­tur­ers, Div­er, IXL and Com­po­nent Indus­tries. All three were help­ful well beyond expec­ta­tions, espe­cial­ly since they realised very quick­ly that I wouldn’t be able to use them.

I under­stood that met­al stamp­ing had upfront costs which were off­set by the reduced unit costs. What I didn’t under­stand was the scale that they work at. Stamp­ing is good once you want 10,000 of some­thing and real­ly sweet once you add anoth­er zero to that num­ber. My pre­lim­i­nary work­ing num­ber is 500, so I have to use dif­fer­ent tech­niques.

The low­er cost method is a com­bi­na­tion of tur­ret punch­ing, laser cut­ting and fold­ing. I have actu­al­ly played with sim­i­lar tech­niques in a met­al sculp­ture course I did a few months ago, I just didn’t think they would come into play for this kind of prod­uct. I have vis­it­ed a laser cut­ter, Beyond Laser who promised that if I could draw it, he could cut it. I also have a vis­it lined up with AMAPRO and Cono­mat­ic for Fri­day.

It looks like what I am after is pos­si­ble. I should have a much bet­ter idea on Fri­day but it seems like I am look­ing at $100-$150 for the mechan­i­cals. This will involve more labour than the stamp­ing tech­nique and it may be worth look­ing over­seas to reduce the costs.

There are also some sig­nif­i­cant unknowns with the mechan­i­cal design that impact the cost, such as what hap­pens if you put sharp cor­ners in the microwave cham­ber.

Inverters

The oth­er main task was look­ing in to using invert­er tech­nol­o­gy. This was less fun. Basi­cal­ly the tech­nique is tied up with patents, pri­mar­i­ly held by Pana­son­ic. The non-Pana­son­ic invert­er microwaves seem to be either licenced or rebadged Pana­son­ics.

Being able to buy the Pana­son­ic guts would actu­al­ly be ide­al for me and seems like fair­ly stan­dard prac­tice in the indus­try. Fig­ur­ing out who to approach is not easy though, I have sent one email off and will see if it leads to a way in.

View full screen

Microwave project managing — week 0

I have start­ed my first work ori­en­tat­ed project for the year. The plan is to design, build a sell a new microwave design.

As I am cur­rent­ly run­ning solo I have to wear a few more hats than I would nor­mal­ly, some I have nev­er real­ly want­ed. One of these is project man­ag­er. To ensure I don’t get caught up work­ing on some­thing less crit­i­cal and blow my time, or at least ensure I am aware of when it hap­pens, I have come up with a plan.

Below is the detailed time­line of phase one, estab­lish­ing the project’s via­bil­i­ty, the plan is to repost this week­ly. I don’t expect to keep strict­ly to the time­line, but at least hav­ing a base allows me to see the devi­a­tions.

I have actu­al­ly detailed a fair bit of phas­es two and three as well but the pro­gram I am using to dis­play the time­line strug­gles a bit with exten­sive con­tent, I might fix it up some day.

View full screen

dumpio2curl

I have been play­ing around with dupli­cat­ing anoth­er program’s web ser­vice API. I want to be able to act as a sub­sti­tute but need to rewrite it in a new lan­guage and change a bunch of its fea­tures. To do this I have been run­ning the orig­i­nal program’s func­tion­al tests against my own code.

Unfor­tu­nate­ly it is some­times dif­fi­cult to see exact­ly what is going on. The tests are writ­ten in Python, which I am not very famil­iar with, and are wrapped through var­i­ous lay­ers adding dif­fer­ent head­ers.

Hap­pi­ly Apache sup­ports log­ging with mod_dumpio so I can run the tests until they fail and then sim­ply look at the last request. That was the plan at least, but a sin­gle call gen­er­ates six­ty lines of log. Much of it look­ing like the sam­ple below, obvi­ous­ly the mid­dle line is con­tent the oth­er two are noise.


[Thu Jan 15 10:06:08.118940 2015] [dumpio:trace7] [pid 1840] mod_dumpio.c(63): [client ::1:53956] mod_dumpio: dumpio_out (data-HEAP): 1 bytes
[Thu Jan 15 10:06:08.118945 2015] [dumpio:trace7] [pid 1840] mod_dumpio.c(103): [client ::1:53956] mod_dumpio: dumpio_out (data-HEAP): 0
[Thu Jan 15 10:06:08.118952 2015] [dumpio:trace7] [pid 1840] mod_dumpio.c(63): [client ::1:53956] mod_dumpio: dumpio_out (metadata-EOS): 0 bytes

A quick search online threw up dumpio_parser.pl which extracts the requests from log files. How­ev­er it works for Apache 2.2, not the slight­ly mod­i­fied for­mat in Apache 2.4.

So I rewrote the input por­tion of dumpio_parser.pl.

Then the out­put was in a mar­gin­al­ly use­ful for­mat, it essen­tial­ly pro­vid­ed the same con­tent lines in the log. I want­ed a for­mat I could throw at curl to retry the request and see if my bug fix had worked.

Fix­ing that I was still not sat­is­fied. I didn’t like the out­put struc­ture, it cre­at­ed a col­lec­tion of tiny files, one for each request. And it ignored the out­put from the serv­er. AND the struc­ture was weird, first pro­gram I have seen using perl -n.

So I rewrote it.

Pre­sent­ing dumpio2curl.

> tail -n 100 apache.log | perl ../dumpio2curl/dumpio2curl.pl

# Tue Jan 13 10:23:22.729122 2015 — pid 15952 — client 50304
curl -v \
–head­er “User-agent:” –head­er “Accept:” \
–request “DELETE” \
–head­er “Accept-Encod­ing: iden­ti­ty” \
–head­er “Con­tent-Length: 0” \
–head­er “X-For­ward­ed-For: 127.0.0.1” \
–head­er “X-For­ward­ed-Script-Name: ” \
–head­er “X-For­ward­ed-Scheme: http” \
–head­er “X-Wsgiproxy-Ver­sion: 0.1” \
–head­er “X-For­ward­ed-Serv­er: localhost:88” \
–head­er “Autho­riza­tion: Hawk …” \
http://localhost:88/1.5/68893

# Tue Jan 13 10:23:22.752411 2015 — pid 15952 — client 50304
# HTTP/1.1 200 OK
# Date: Mon, 12 Jan 2015 23:23:22 GMT
# Serv­er: Apache/2.4.10 (Debian)
# X-Pow­ered-By: PHP/5.6.4–1
# X-Weave-Time­stamp: 1421105002.7521
# X-Last-Mod­i­fied: 1421105002.73
# Con­tent-Length: 2
# Con­tent-Type: application/json; charset=utf8
# []

Return top