Friday, January 20, 2012

Personal UAVs

The Parrot AR Drone has been out for a while, and new version (sans the 'ducted' fans) was shown at CES. An acquaintance of mine across from my hangar also steered me to rcexplorer.se, a website dedicated to RC craft, yet recently focused on tricopters.

While the Parrot is geared toward the 'just for kids',(who own wifi capable cellphones)  the Tricopter and its more serious $600 price tag and collapsible frame got me thinking about some use cases.

An frequent traveler could unpack their UAV, let it loose at their new hotel, and get a birds eye view of the surrounding area. With some sort of direct control (say, a viewport pumped right into your sunglasses), intimate views of nearby shops and parks and other interesting (or dangerous) places could be discovered more easily, helping one plan out a day.

A savvy bike messenger could deliver a letter up 40 flights of stairs. Heck, why have a bike messenger, just send a UAV instead.

Stuck in traffic (or showing signs of slowing traffic), a motorist (or rather, a passenger) could deploy a UAV to check the road conditions ahead.  While we get those 'red lanes' marked on our mobile phones traffic maps, they rarely tell us what lanes are blocked, and what the real situation is. This could even be a feature of the car.

While WiFi wouldn't work for most of this (unless you wanted a 100 foot high periscope, which could still be useful), one of the lower frequency open access bands would work well.
With the amount of CPU and sensors available today at a low cost (and tomorrows suite even cheaper), a
drone could follow waypoints (without realtime control) instead that visits GPS coordinates, takes panoramic pictures at the desired locations, and returns to the origin point, where photos are then blasted over wifi (or transferjet, etc)

The future is now,  in the sci-fi RPG "Deus Ex" , one of the 'augmentations' was a drone that could be launched for snooping around corners, and it could even deliver a shock to enemies who got too close.  Another use of a personal UAV in video games; the power suits from the Looking Glass game "Terra Nova" featured recon drones that could be sent out to find enemies.

Granted a $600 tri-copter is probably not the next stocking stuffer, though a smaller floating disc or 'beer can' design could have merit in the near future.

Monday, December 5, 2011

Affordable GA Turbines

I attended a talk about this very topic over the weekend. The presenters started off with a lot of great ideas (their product is in development), and decent stats.

Designed for 'low and slow',  < 25000ft, < 250kts

Bypass Ratio of 7,  fuel consumption was about 40 gal/hr for 500ish pounds of thrust.

FADEC controls, integrated starter/generator, all electric pumps, 5 hour strip down time.

Turbine is a non-cooled blisk.

Fan is an aluminum blisk.

So, all this sounded great, then things started to fall apart in the second half.

Combustion chamber takes 18 months to make (or for them to get the turn around on one unit), to me thats a red flag, any single part that is that complex must be stupid expensive, or they need to find another supplier.

Certification won't be ready until 2015 at the earliest.

Cost: US$250,000 , and they expect people to buy two. Really? For $500,000 I can get a used King Air, *today*. Even some Lears and other 80's era jets are in this price range nowadays.

I really don't see where this engine fits in.  I'm grateful they revealed their stats, (just try to find stats or costs on a PW610 or  Williams FJ-33), but this is still way out of the range of 'general aviation'.

Granted, these guys aren't Innodyn (who imploded without ever delivering anything and made promises they couldn't keep), and they were rather humble, and made no real claims to anything. Everything was an estimate.

GA really does need an affordable turbine, and by affordable, that means "the price of a nice car", not 'the price of a mansion'.

A new O-360 runs at around $50,000, (most of which probably goes to pay lawyers and paperwork), and people do buy these, so lets stay that's affordable.

Perhaps I'm wrong, but with CFD and simulator power available, wouldn't starting a new engine (or taking a APU design and adapting it), be 'relatively' easy?   Fabrication has come a long way, parts can be milled on a 6-axis mill, Sintered with lasers, and so on.  Turbines also have fewer parts, so it should be less to certify, if one is going that route.

Still incredibly disappointed this hasn't happened, is there not really a market? is it actually way more harder to make an engine than I realize?  
One of these days I'd certainly like to try.

Monday, July 25, 2011

Giving up on HTML5 file drag and drop.

I had a solution that 'mostly' worked in chrome, and 'mostly' worked in firefox, and then I find out safari, as usual goes off and does its own thing.

I then read QuirksMode multi-page rant on how bad this API is, and realized the real problem was trying to support this mess.
I'm pretty sure I had safari drag and drop working at first, but now? It refuses to accept files, my code never even gets the chance to 'accept' or 'reject'. Maybe I'm doing it wrong (though FF and chrome both work), though its so hard to tell. This whole API is a terrible terrible mess with no clear examples on how to use it, nor any sort of standardized test suite to prove it works on any given browser, which makes it even more likely that a bug was introduced, made me realize its a waste of my time trying to deal with it.


As I dig more into web development, it certainly seems like no one is at the helm, or whoever is at the helm of this crazy ship certainly has no interest in consistency, or even 'looking out' for the web developers.
If the W3C is really in 'charge' why aren't there a proper set of test suites that are run, (maybe they exist, but they must not be thorough with all the crazy nonsense I've seen between chrome and firefox.)


So for now, I went back to the <input> type everyone loves to hate, and that's type='file'.

Which in itself, is another big mess.

On chrome and safari, there is an 'OS' styled button that says "Choose file", with some room for the filename on the right.
On firefox, it is an old school square button that says 'browse', which has a text entry field on the left.

Chrome and safari (via webkit?) allow  a user to drop a file from their desktop onto the button.
Firefox does not allow this.

In firefox, the <input> can be sized with style, but then the button just gets bigger.
In webkit, the area gets bigger, but the button remains the same size. Most other styles are ignored.
Safari will never give you the results from multiple files being selected, only the first one.

Safari never sends the mime type in the POST, so, good luck with trying to figure that out, Firefox and Chrome bother to suss this out and report it.

Thursday, April 14, 2011

IE9 - did they just stop trying?

IE9 was supposed to embrace html5/css3 and so on. I fired it up and pointed it my new website, thinking maybe it'll 'just work' (much like how FF and chrome 'just work').

The result was a train wreck. I don't think any XMLHttpRequest fired, the CSS was pretty much ignored. I found a setting to switch it out of 'quirks mode' (Why default to this?) but the result was still pretty bad.

Maybe if MS would stop concentrating on  "hundreds of fish" demos and get CSS working right, they'd have something.


Generally, WebKit and Firefox both just seem to work. The main inconsistencies are a few javascript quirks, but at least they can render bog standard tables, which apparently IE9 can't.

If IE9 (or IE10) end up 'mostly working' like the other two do, I'll consider supporting it, but it's in such a bad state that its currently not worth my time to support any IE browser.

Sunday, March 27, 2011

PreparedStatements escape their arguments.



String sql = "select * from myTable where sometext=?";


PreparedStatement prep;


...


prep.setString(1, "I'm in yur SQL");


out.println(prep.toString());

>select * from myTable where sometext='I\'m in yur SQL'


I was 'pre-escaping' the 'sometext' string before hand, which means a 'double' escaping happens, causing the query to break.


I originally thought it magically stored the string and I didn't need escaping at all, but I messed up another part of the query, leading me down the wrong path. Argh!


Pro-tip, use TOAD, or similar tool (MySQL Workbench) to verify your queries.  The preparedStatement.toString() will spit out the query for you.



Wednesday, March 23, 2011

Firefox vs Chrome - Event variable names

Works in chrome, not firefox:

<button onclick="Foobar(evt);">

In order for firefox to work as well, the event variable MUST be named 'event'.

<button onclick="Foobar(event);>

I'm guessing webkit assumes the first arg is for the event data, and firefox probably matches the string with 'event'.


No big deal, using the word 'event' is probably a better style guide anyway.

Sunday, March 20, 2011

Caveat emptor: AWS requires apache commons

specifically:

commons-logging-1.1.1.jar
commons-httpclient-3.0.1.jar
commons-codec-1.4.jar

The SDK does not include these.
No where in the docs does it say these are required.

I wasted some time figuring this out.

My friend Trimbo says that I should be using 'maven', which would have fetched these JARs magically from the intrarwebs.

I remain skeptical, I have yet to figure out how to get my project set up correctly, its complaining it can't find a server, even though tomcat has been registered globally with Netbeans.

This list of JARs is just for S3, I have no idea what other jars might be needed if other parts of the AWS SDK are touched.