Scanning the car with an Xbox Kinect and Paraview

I have a pretty accurate drawing of the Seven, from the drawings i’ve created models in OpenFoam.  I want to do the same for the Fury, however I don’t have drawings of the bodywork.  Drawing freehand in Solidworks would take me forever, so I decided to try scanning the car using an Xbox Kinect and the openkinect libraries.

The first thing that you need to do is get a point cloud from the xbox kinect, this is not quite straightforward as it seems. First the sync_get_dept() returns a disparity image, not cartesian points, so some conversion is required.  The openKinect wiki has most of the background information required.  The calibkinect library can do most of the calibration work, this can be formatted into whatever format suits you best.  I chose wavefront’s format as it stores the point normals and can be read by both MeshLab and Paraview.

Getting a single disparity image is quite easy, however stitching many together is more challenging.  Fundamentally in order to scan an object you need to know the following:

  • Where the camera is relative to a fixed point in space
  • Which direction the camera is pointing.

Assuming you know these two things, you can do a fairly simple matrix transformation on the points to move them into the appropriate location. Initially I tried to find a clever way to triangulate the position and direction of the kinect, it would be great to be able use it like a wand, however this requires significant levels of accuracy, and the only sensor on board is a tilt sensor.  GPS wont cut it, I had some ideas about using a bunch of cameras, or ultrasonic sensors, but in the end I shelved that idea for now.

Instead I decided the easiest way to get a usable scan was to do things the old fashioned way.  I only need to scan half the car, as its symetrical.  As such I created a box around the car.  This allowed me to position the camera at a known location.  I used a tripod to hold the kinect, and took images at one meter intervals from about one and a half meters away from the car.

I then cleaned each mesh in MeshLab so that I just have the car, and no background.  Then loaded each one into paraview and applied transformations to each file until they were lined up based on the measurements I’d taken earlier.  This worked pretty well but required some manual adjustments for the first image in each direction.

The end result is good enough for a first attempt.  I’ll load the file into Solidworks and start drawing.

Self Inflicted Misery

Camping next to the broch

After a very enjoyable week hiking and driving around northern scotland without a hitch, disaster finally struck on my way home.  Not long after leaving the house the car just cut out with no warning, the first time I managed to grind to a halt and stop in a lay by.

It was likely something electrical, so I opened the front of the car and started wiggling.  Eventually after pulling at random wires for a while it started up, and I drove off only for it to cut out again about 10 minutes later.  This time I came to rest just after a blind bend, I felt the only thing to do was get the car off the road, so I used the starter to pull the car forward 15, this ultimately was what ruined my day out.

After more wiggling, and as the battery started to go flat, I called out green flag who sent out a local recovery company.  We hooked up a spare battery and started wiggling again, eventually the engine started, and we continued wiggling until it cut out again, this time I noticed that the battery lead to the solenoid was loose, this is also where the main electrical feed for the ECU branches off, so it was tightened up and off I went.

I stopped for fuel 200 miles later, and as i started the engine up, i noticed that the starter was turning very slow, and initially put this down to the battery being flat and the generator being weak, and drove off.  About 20 miles later it cut out again, this time I noticed the battery lead was loose, I reconnected it but the car wouldn’t turn over.  I called out the green flag again.

As it turns out the issue was not a flat battery, in fact far from it, I’d managed to kill the starter motor which when I removed it was just a pile of black soot and burned electrical connections, this was the price I paid for using the starter motor to get the car off the road, although I’d rather a broken starter than a smashed car.

I wasn’t convinced i’d solved the electrical problem for good though, loose battery seemed too good to be true, and one would  expect that if its loose it would stop running completely, or make no difference, as the generator isn’t affected.  Green flag only restart your car once, after that its recovery or your on your own, so rather than get suck and have to call out the ANWB, I decided to have the car recover to Andy Bates for a new starter, and to get the engine mount beefed up as it had cracked.

I found the electrical issue, or should I say issues once I got the car home a few weeks later, there was some corrosion on the fuses, when the bulkhead flexed the car cut out as a result.  I was finally able to reproduce this when examining something with the lid open, replacing the fuses has solved that issue, and its easy to check.  I expect the loose connections didn’t help things either so I glued and lock wired them accordingly.

 

First Nurburgring trip in the Fury

Did 8 laps of the ring in the fury, all I can say is that it sticks to the tarmac like glue, goes like stink, and is probably the most fun I’ve had outside the bedroom.  It took me a while to really get it up to speed, and my camera only lasted a lap sadly.

It’s also the first time I’ve ever been on the larger VLN circuit, its quite nice as it gives you some space to really push the car a little before going back onto the north loop which is less forgiving.

Fury at the Nurburgring

Fury at the Nurburgring

Fury at the Nurburgring

Fury at the Nurburgring

 

Collecting the Fury

The car is finally ready, in fact, its been ready now for about a month, but due to other commitments, I’ve been unable to collect it from Andy.  I’m now back from Guatemala, the first week at my new job is complete, and if my past car related logistical experiences are anything to go by, this weekend is going to be hard work.

The car is registered, taxed, insured, and otherwise ready to drive, except for the engine, which whilst running, hasn’t been setup yet.  I’ve only driven the car about 250 meters, but i’m fairly confident that as long as the engine doesn’t explode on the dyno, that I crash and burn due to driving with slicks in the middle of winter, and if nobody forgets my booking, that i’ll be home on monday night.

The plan is as follows, fly to Birmingha,, pick up a car transporter, drive to Suffolk, pick up the car, drive to northhampon with the car on the boot, and get it dyno’d, then drive back to Birmingham to return the truck, before driving to Harwich to catch the ferry. A bit optimistic? Perhaps, but its that or wait another 3 weeks…

The fully flat floor makes it hard to strap the car down properly, using the rollbar puts additional downforce on the rollers, increasing drag, and compressing the suspension.  As the tyre speed increases the tyres stretch, and this can cause them to rub

As it turned out, everything went according to plan, I collected the transporter, picked up the car, and arrived at Northampton Motorsport more or less on time. The car was strapped down and mapped.

Power run shows just under 180bhp at 12,500rpm

Peak power was 179.5 still with a few more rpm to go, so I’ll round that up to a nice clean 180.  After bolting on the side pod, and dropping the transporter off I had the best drive ever back to Harwich.  This car has completely redefined my definition of fast, and whilst with the ambient temperature a crisp -3, I wasn’t exactly testing the performance, it absolutely blew me away just how capable it is.  I arrived in Harwich just in time to roll onto the ferry, and slept like a log overnight.

Power run shows just under 180bhp at 12,500rpm

Interior Finished

I finished the interior of the car this weekend. I was being held up mainly as I had to wait on some parts. I had to fit the on/on/on switch for the wipers, however in some fit of mouser madness I misread the part number and whilst it is an on-on-on switch, its actually not any use on its own, as its positions are Z+X X+A A+B which means I still need to use a relay. So I just broke, and wired up a relay that breaks the park circuit when the wipers are on. They wipe, and seem to do so pretty quickly.

SDC10444

I fitted the replacement flasher, which flashes, and checked all the switches function as they should. They did, so I bolted in the dash, its pretty solid, and fits just the way it should. I think it looks really good, and am very pleased with the end result. It was definitely worth all the mess. I cleaned the interior with an air gun, hoover, and fabric cleaner, and routed the internal wiring, and stuck down the side carpets. The immobilizer stopped working because the sensor was too far away from the fob, so i need to move it somewhere else, but I’m not sure where yet.

SDC10446

I then trimmed down the seat belt tails to a more sensible size, i went for six inches past the buckle. Next up was to trim around the windscreen. My plan here is to use alcantara, with one edge tucked under the windscreen ever so slightly (should be fine since its bonded in place with copious amounts of PU) and the other is held down with some U trim which also puts the required radious on the edge of the windscreen surround. I then used contact adhesive in the bits in the middle, so hopefully it will all stay up there. It was fiddly and took forever, but looks pretty good now.

SDC10437

I bolted up the hideous sierra steering wheel, and checked everything worked, it did so had a celebratory drive around the car park, gear change is crappy since there is no tactile feedback from the lever, but this will be easily remedied post IVA. The car is pretty quick, first gear is pretty tall though, i’m hoping the 3.21 diff was the right choice afterall. The interior is now finished, I’ll need to start covering it when i’m doing messy jobs to try and keep it nice and clean.

SDC10441

Floor Finished

I fitted the rear diffuser today, it runs the full width of the car, and starts at the rear bulkhead running flush with the rear of the bodywork. Its bolted on with M5 rivet nuts, however as it should be an aerodynamic aid providing some down force, i wanted to make sure it didn’t flex. I’ve added three tubes bolted in place at the rear to pull down on the bodywork. The look is growing on me, at first it looked a little bit too MaxPower, but its wearing off. As it will count as above the floor line, it needs to have a radiused edge, so I’ve added some U trim to protect Mr IVA man and his delicate little fingers.

Fully flat floor now in place

At the front I fitted a bit of right angle aluminum to eliminate the gap between the bodywork and the floor, you don’t notice it, but I want to force air in the front of the car through the nose, not through the floor where possible. I added some U trim around the aluminum floor to protect me and my delicate little fingers.

SDC10394

I removed the side pods and cleaned up all the dust in them, and bolted down the bonnet clips. It took ages to get a good shut line again after I put them on, so I hope I don’t need to do this too often. The floor is now complete, and I think it looks pretty good.

Inside I fitted the heater hose, I then decided there wasn’t enough air coming out the vents so added another hose at the other end which required some cutting and shutting of the fixtures and fittings, but now provides a bit of a blast when the fan is on.

I added a T-Pull handle for the fire extinguisher, its within arms reach under the center console, but well out of the way in case it gets pulled accidentally.

SDC10447

Wipers and Intercom

Fitted the windscreen wipers, these have a 95 degree sweep, so I’ve mounted the offside one just to the right of the steering wheel center, and the other about 5″ to the left of where the tip of the blade finishes. Finding the position was easier than I expected, using a protractor and the arms and some tape I put them in various positions and checked that the were not missing anything in my field of vision.

SDC10373

Fitting the wheel boxes to the motor on the other hand was endless frustration. The theory is simple enough, there is a corrugated flexible bit of wire that runs through some copper tube from the motor to the wheel boxes, the wheel in the wheel boxes is turned by the teeth on the wire, the wire is pushed and pulled by a crank on the end of the spindle.

SDC10388

I measured and cut the tube, and used a mandrel to bend it into the right shape, offered it up to the wire, and of course, it didn’t go in. The wire is about 8mm, as is the ID of the copper tube. I de-burred the edge, and tried again and it got as far as the first bend, where of course it was too narrow to go any further. I spent a good few hours trying smaller radius bends, before finding another roll of ever so slightly larger tube that allowed at least some movement.

I then flared the end, before noticing that i hadn’t put the nut on yet, after remedying that I offered up the rather inflexible assembly to the wheel box. This is located under the windscreen, above the electrical tray. It fits in there with a bit of bending, but removing the nuts on the end require the patience of job. These nuts are used to clamp the copper pipe in place, the wire then goes through the wheel box, and into another section of copper tube. I spent a good hour wiggling, and eventually managed to get the wire to pass over the lip on the clamp, another eternity tightening it up, before i (thankfully) had the good wisdom to test it worked, because as soon as i pressed the button the fuse popped.

Tried again with a slightly larger fuse, and it pushed the flare out the motor end, i yanked on the wire and it was locked solid. I assumed this was down to the cable being crushed, but after removing it, it was obvious that you have to thread the wire through the wheel box, as there is not enough of a gap for it to sit home if you don’t, so basically when i tightened up the clamp i was just locking the wire in place.

I decided at this point, that things were getting too complicated, so i decided to use 10mm ally tube, and move the motor inside the car to eliminate the need for tight bends in the tube, this should allow the mechanism to run smoothly as well as making it easier to fit.

SDC10378

I drilled out the brass nut on the motor to 10mm, and put a flare on the tube, put the nut in a vice and screwed in an alloy boss which sits in the motor housing and is clamped in place by the cover of the motor. Of course i over tightened it and it sheered away in my hand. This was turning into a bit of a bodge, so after a bite to eat, i decided the best option was to make a new boss. (its simply a T shaped bit of metal with a hole in it) I did this by taking some alloy bar, turning it down so it had a lip on it. I then brazed the alloy tube to it using Durafix, and some air of professionalism started to return to the finished result.

With it all bolt in place, the mechanism moves very smoothly, and is rock solid, which was pretty much what I wanted. I can now keep myself awake when i sit in the car by being slapped in the face by the wiper arm until I get round to sorting out a windscreen.

SDC10380

Next job was to fit the intercom. I’ve mounted it on the side pod to my right, just at the end of my arms reach under the dash, to make the wiring tidier, i drilled a series of holes in the back of the casing and routed the power, and comms wires out there, leaving just the inputs for the music/gps etc at the front. The wires for the headsets will run along the outside of the side pod to their rubber mounts.

SDC10387

The side repeaters are also fitted and wired up, along with an indicator switch and working hazard switch (Using a conventional way of doing things.) which will do until SVA, although for some reason my flasher wont flash, i tried a different flasher, and it flashes, but at the wrong rate due the LED lights, so i’ve ordered a replacement LED flasher unit.

SDC10412

I made a very crude, and TBH not very good shift lever by extending a momentary on toggle switch with some alloy tube, this will do until I get rid of the ginormous sierra steering wheel (Post IVA) and can fit a proper flappy panel wot-sit behind the smaller Momo one.

SDC10384

Fury Todo List

Its mainly little jobs now, in no particular order these are:

  • Interior
    • Fit the dashhboard
      • Mount the dash
      • Mount the T-Pull handle for the fire extinguisher
      • buy and fit a working flasher relay
      • Fit (Temporary) buttons for dip/mains and horn
      • Make and fit temporary shift lever
      • Fit the heater hose from the dash to the heater
      • Fit the heater hose from the heater to the driver footwell (Exhaust should keep the passenger warm.)
      • Fit a working switch for the heater fan
      • Fit the intercom
      • Order and fit switch for wipers
    • Stick down carpeting
    • Carpet around the windscreen aperture
  • Engine:
    • Make an airbox to get through SVA
    • Adapt existing air filter to sit 180 degrees from its current location and make hole in bonnet
    • Remove AIS system and turn it into a breather system
    • Order and fit a catch tank
    • Change the O-Ring on the sump for a yamaha part
    • Order and fit alloy tubes as current ones seem to be porous
  • Bodywork:
    • Glue rear lights in place
    • Use some PU to fill any gaps
    • Fit front air dam
    • Buy and fit some mirrors
    • Wash clean and polish
    • Buy and fit rear diffuser
    • Fit side repeaters
  • Windscreen:
    • Buy and fit windscreen
    • Fit windscreen wipers
    • Fit washer nozzle
  • Brakes:
    • Set the brake bias
    • weld up the bias bar for IVA
    • Remove the bias bar adapter
  • Wheels
    • Balance the wheels as a couple of the sticky weights came off
    • Fit all the wheel nuts, and cut down the front studs if required
  • Suspension
    • Book and appointment to get suspension set up and corner weighted

Bonnet pins and rollbar

Bonded in the bonnet pin mounts to the side pods, but i think it will need to be bolted, I’ll bolt them in at a later stage when i have a good reason to faff with the side pods.

Put a final coat of black on the roll bar, and bolted it in only to find out I’d ran out of m10 nylocs, managed to find one, which is enough to hold it in place, with the other bolts just screwed into nothing. Will pick some up on Monday and finish the job.

This didn’t stop me from adjusting the harnesses and fitting them, with the adjusters in the right place they are a lot more comfortable and of coarse, a better fit, whilst very comfortable the seats are tight to the bone, to the point i can actually feel the seat belt through my jeans. Must lay off the pies.

I spent the rest of the evening tidying up the garage as i hadn’t really put anything away since before I left for Spain. The seven needs some post-trip-love, or at least a wash, so i might try to get started with that tomorrow. Its dripping oil on the floor so I’ll put of washing the floor (which is now a little slippy) for a bit longer, or until i slip and crack my head properly.

Next up in the fury is to finish of the electrical parts. Until I can get a circuit board manufactured for an affordable price, I’ll use a normal toggle switch for the indicators. The hazards need to work with the ignition off, which presents a problem, with the ignition off, and key removed, i can turn on the hazards, this is run from a permanent live feed. However, the indicators, work from the ignition feed. If i have the hazards on, and turn on the indicators then the ignition circuit is live too as power can flow back up the feed from the ignition circuit. I’ll put a NC relay in there to cut the power for now. I also need to find myself an on-on-on dual throw toggle switch for the wipers, for now I’ll just leave the wires ready to attach.

If all goes well with the wiring I’ll have a go at fitting the wipers.

10% of the progress, 90% of the time

I’m down to the predominantly little jobs. I picked up the shifter arm when I was last in the UK, so I fitted that to the flat-shifter solenoid,

I need to finish the wiring, and there is now nothing in the way of this, so I’ve been out with my soldering iron, loom tape, and zip ties. The engine bay is now complete, with the flat-shifter-max wired in, and connectors ready for the rest of the flat-shifter post IVA.

All the engine loom is tidied away nicely, however I think i will need to make a support for the bike loom as its a little too short to sit on the bulkhead nicely.

Next up was the bonnet catches, these are aluminum cases with locking pins, these look pretty nice, and are strong enough, however the bonnet has a pretty poor fit around the side-pods, as the pins are not locked, I think they may end up coming loose due to the side pressure.

To stop this happening, I’ve bonded and riveted in some plates to the bonnet, the plates have a pin in them which goes vertically through the side pod, this keeps the bonnet in place horizontally, whilst the locks keep it in place vertically.

Next job is to fabricate the mounts on the side pod that secure the bonnet to the car.