Tuesday 14 October 2014

On the Road

The bike is now fully put back together again at last! i.e. all fairings, lights, mirrors, etc. This means I am no longer restricted to testing during daylight hours. A nice addition to have coming into dark winter evenings. This is the first time it has resembled a finished bike since the project started.

Over the last few weeks I have managed to take it out for a few long (2 hours plus) spins while logging and letting the tuning software refine the VE table. I have to say, I am very impressed so far with the injection system and how well it can cope with the wide rev range. Sure there are rough edges and areas which need further development but really I am delighted with the performance of the system. Above 8,000rpm the ride is very smooth and it honestly feels like it was made to be injected. 3,000 to 8,000 was very rough to begin with but over the last few rides it has smoothed out significantly. That area still needs more work but it is rideable. I suspect a lot of the issues at low revs may be caused by the fact I have acceleration enrichment settings disabled and a seemingly small change in throttle in that range results in a much larger change in relative airflow than the same change higher up the rev range.

I also fixed the issue with the Koso dropping revs at high engine speeds. It was simply a matter of changing a setting in the ECU to output the tach signal at half engine speed and then change the settings in the Koso to convert the half speed signal back to real engine speed. It seems the Koso has issues dealing with 2 ignition events per cycle at high engine speeds. Having a reliable speed readout also gave me the confidence to bring the engine all the way up through the revs. It has left me with no doubt whatsoever that the microsquirt can handle engine control at CBR250RR speeds.

There is a lot left regarding tuning the fuel table and then the ignition timing table but it now feels more like a bike and less like a project so that is a big positive.

The next big job on the bike is a new paint scheme. The new front fender and fuel tank don't match the rest of the bodywork.

Monday 22 September 2014

Back at it again

So after a few months of not being able to work on the bike at all I am back at it again.

I haven't done any more physical work on the bike since, just tuning and refining the control side of the injection.

Below is a quick video of one of some of the first rides running with injection.

I was relatively sure I had populated the fuel table to be safely rich to begin with but I did a slow run up through the revs at first, attempting to hold relatively steady throttle and revs at various points in order to build up a log of the fueling. After that, I stopped and checked the log for any lean areas or overly rich areas. and adjusted the fueling in that part of the table to compensate. There were a few areas that needed attention. The rev range log and adjust was repeated a good few times that aren't shown in the video until I was absolutely sure I wasn't getting any lean areas.

I then attempted a few runs that contained a mix of coasting, gradual and hard acceleration to see how the engine reacted under normal riding conditions. It doesn't like very quick throttle openings but that is to be expected as I have acceleration enrichment disabled for the initial tuning process. Acceleration enrichment adds additional fuel during acceleration depending on the rate of throttle opening. The lack of this is most evident while trying to blip the downshifts.

Circa 6-7,000rpm at small throttle openings sounds quite rough (0:30-0:45 in the video). It has improved since that clip in the video but hasn't disappeared so that will need further work.

Also the Koso dash does not seem to like the high revs and drops signal anywhere between 10-14,000rpm as you can see in the video. It looks like it misinterprets and loses sync with the signal coming from the ECU and then catches it again. The point which the loss happens seems to vary as well as the time before it picks up again. I have had no chance to investigate this yet but first on the cards is to fit an inline resistor as this cleared up my VR signal issues going to the ECU last year. I have also discovered a setting in Tunerstudio that allows TACHOUT to output half speed signals. There is a chance the Koso will like these slower signals better and it can then do its own internal multiplying to get back to the correct RPM reading.

Over the last few days I have been logging full cold starts (engine stopped for more than 12 hours) and summarising various initial conditions such as cranking PW, idle VE, coolant temp and time to engine start. I am defining engine start as the point at which engine speed rises above 1,000 RPM. The summary results will hopefully build up a good database on which to base changes to the cranking PW curve to get the quickest possible starts. So far I have not had any real cold starts. The last 3 starts ranged from 15degC up to 22degC. Each achieved engine start within 0.95-1.52 seconds. Starts were achieved with zero throttle and no choke.

I have noticed also that my logs are recording INJ2 timing of 0deg constant during engine running although the semi sequential injection should make it 180deg offset from INJ1 timing. The INJ1 timing shows correctly as per table so it may either be a glitch in the software or elsewhere to say that INJ2 appears not to be timed. If this is the case it may explain the slightly rougher than expected running.

More to come as refinement progresses.

Friday 20 June 2014

Up and Running

Bit of a delay between posts I'm afraid due to not getting to the bike to do further work.

The PLX SM-AFR controller and sensor arrived and got installed as soon as I got at the bike. It's a nice bit of kit and install was very simple! The way its set up is that you only end up installing the wires into the plug that you will use so in my case it was just the wideband analogue output and the 12V & GND wires go through a separate plug. 5 minute job to fit these three into the same connector as I had on the wiring loom and plug it in.

Compared to the LC-1 too there is no free air or heater calibration needed. Once the engine was started, the AFRs were reading nicely and consistent with what the LC-1 used to tell me before giving up. All good for a spin!

I spent about 2 hours riding, logging, adjusting and then repeating the process. Most of the testing was carried out in 1st & 2nd gear initially on a sloped road in order to get the highest variance of throttle position and RPM. To begin with the VE table was much too rich (better than being the other way around). Over the course of a few runs, some tweaking brought the AFRs across the range up to between 12.5:1 and 14.5:1. More refinement will be required to get the AFRs more consistent across the table. I am going to use TunerStudio's VE Analyse software to get the table to within 90-95% of where I want it to be and I will leave the final refinement to be done on the dyno at the same time as creating a 3D ignition map.

Unfortunately testing was cut short when I went to pump the rear tyre and noticed a damaged valve stem. Too dangerous to keep going until it could be fixed. I didn't get a video either because of that. After the tweaking though, the engine seemed nice and crisp, response was good and it pulled nicely through the revs. As mentioned, more refinement left but it's definitely better than expected at this early stage in the tuning process. 

Thursday 8 May 2014

Faulty Lambda Sensor/Controller

After my last post I have got to further tuning the idle on the engine.

The last video was using 2 injection events per engine cycle in an alternating pattern. Basically, cylinders are grouped in pairs and controllable independently. Cylinders #1 & #4 are grouped as INJ1 and cylinders #2 & #3 are grouped as INJ2. 2 squirts alternating means all the required fuel for an engine cycle is injected in one go with the 2 banks alternating by 360 degrees and injector firing is untimed.

I then tried 4 squirts alternating which splits the required fuel into 2 injection events per cycle per cylinder with the two banks alternating by 180 degrees and firing is still untimed. My engine responded much better to 4 squirts alternating and was able to idle much smoother and also the off-idle response seemed sharper so I had found my base injector setting.

Once I had established that, I moved to trying timed, semi-sequential injection. At cranking I have timed the injection event to happen while the intake valve is open so that the fuel is being sprayed directly into the cylinder. At idle, the injection event is timed to end just as the intake valve opens and then this is advanced a little as the revs rise up until c.8,000RPM. This is going by recommendations in the megasquirt documentation and may be subject to adjustment as things progress.

The disappointing thing about it is that my Innovate LC-1 lambda sensor is showing faulty and so I haven't had the chance to test ride the bike yet. The sensor will read ok, if a little touchy, for about the first ten minutes of running and then it will display a full lean condition even though the idle is set to slightly rich. I have calibrated the heater and also carried out free air calibration on the sensor several times but with no results.

About 2 years ago before I started this project, I used the same sensor & controller in the same position in the exhaust to successfully monitor and tune my AFRs with the stock carb setup so I can only conclude that either the sensor or controller is faulty. After researching a little, it appears that many people have had the same problem with the LC-1 and in most cases changing the controller seems to have solved the issues.
In light of this, and rather than spend time troubleshooting either one or the other, I have bought a new PLX SM-AFR controller and sensor and so hopefully that will solve my sensor issues.

Now I just need to get back in the same country as the bike so I can continue testing with the new sensor.

Monday 7 April 2014

Injector Testing and First Start

First of all, I am delighted to say that I have started the bike on injectors! Sticking to the timeline though:

As I was unable to get hold of a used fuel pump at short notice in Ireland, I decided to chance repairing the ZX10R pump I had. So late last week, I fully stripped all parts of the pump and cleaned all the contact points with wirebrush, fine emery paper and contact cleaner and reassembled the unit.
When I then tested the pump, it worked perfectly so I proceeded with testing.

As the CBR600RR injectors were designed for use with a fuel pressure of 50psi and the ZX10R fuel pump only delivers a fuel pressure of 44psi, I needed to test flow the injectors using 44psi fuel pressure. To do this, I mounted the injectors in the original CBR600RR secondary fuel rail and ran an extended section of fuel hose from the pump on the bike to the fuel rail. I also extended the wiring from the main bike loom out to one of the injectors on the test rail to provide power to the injector and a direct earth wire to the battery with a push to make switch between the injector and the battery to allow me to control the injector and operate it at 100% duty cycle. A graduated cylinder was used to catch and measure fuel discharge and the injector was run for several 30 & 35 second intervals to determine flow rate. Using the average of these tests, I was able to determine the actual flow rate of the injectors was 165cc/min.

Rudimentary injector test rig

 While the test rig was set up, I used the opportunity to test the injectors at various pulsewidths and speeds.

Once testing was complete, I re-installed the injectors in the throttle bodies and fitted them to the bike.

It took circa 5 mins of cranking and varying cranking pulsewidths before I got the bike to fire and sustain running. First start was even captured on film.

After first start, idle was very high (~4-5,000RPM) and the engine also sounded rough as if it was only running on 3 cylinders. Nevertheless, it ran and there was going to be some tweaking needed to refine it.

The next day, I was able to carry out more extensive testing and attempt to refine the idle. As it turns out, the roughness in running from the first start was due to one spark plug lead being unplugged! A quick fix. Idle was lowered significantly once I carried out a synchronisation of the throttle valves using a good set of vacuum guages. Once the throttle bodies were synchronised, I was able to get a steady idle around 2,000RPM.
Further adjustments of the idle pulsewidths meant I was able to get the engine to idle reliably and smoothly at 1,700-1,800RPM. I attempted to go down as far as 1,500RPM but the idle became slightly unstable and off-idle throttle response was not ideal. This is because the pulsewidths required at this engine speed were too low and most probably in the non-linear flow region of the injectors.

I adjusted the idle pulsewidths to achieve the lowest intake manifold pressure while still holding a stable idle. Ideally, I would have liked to know the air-fuel ratio also but my O2 sensor was not reading correctly. It consistently indicated extremely lean conditions even though I was able to bog the engine from introducing too much fuel. I was able to verify it worked correctly by inserting it in the exhaust of a known bike and getting a reading so I suspect the problem is caused by an exhaust leak between the headers and the cylinder head. This will need to be fixed before continuing with ride testing.

Even though the fuel VE table is still very basic and just a generic table generated by the software, the response off-idle is quite good and the engine appears to rev cleanly up to 6,000RPM. Ride testing will refine this even further and I am interested to see if this translates to a benefit in response when riding.

Sunday 30 March 2014

Final Assembly & Wiring

It has been a busy week with some good progress. I didn't quite get as far as first start as originally planned due to fuel pump issues but all the same I am happy with where things are now.

First off, my carb/throttle bodies were finished with machining. Pete Walker of PB Machining based in Loughrea (pbmachining@gmail.com) took on the work and I'm very happy how they turned out. It was invaluable to have someone who understood the final application and who was interested in the project to do the work.

Finished throttle bodies with some re-assembly required

Once I got the finished throttle bodies back I could work on the injector & sensor harness. As the majority of sensors (TPS, MAP, IAT & CLT) are located on and around the throttle bodies, the plan was to terminate the main loom just before it reached the throttle bodies and then have a separate harness that would stay with the throttle bodies for the injector wiring and sensors.

Injector harness

Once the throttle bodies were fully re-assembled, I needed to set up the TPS mount. I had asked Pete to drill and tap an axial hole into the end of the #1 throttle rod to take an M3 machine screw. I took the head of a button head screw down on two sides to allow it to slot into the TPS. I needed to position the screw in such a way that the throttle could move through its full range of movement without reaching the limit of the TPS. Once a suitable position was found, the screw was thread-locked into the throttle rod with a half size nut to provide additional security. Then I drilled and tapped the TPS mounting screw holes in the adapter plate in the right place.

Detail of TPS screw
TPS in place
Once everything else had been assembled, I could mock fit the throttle bodies to the bike and complete the injector harness.

Completed Injector & Sensor Harness

Injector placement in the throttle bore

The finished assembly is very tight in the bike. There is not a lot of room to play around with in there and the fuel rail only barely fits between the frame rails. I also had to move the thermostat housing down c.20mm to allow the fuel rail to fit. Even so, it takes a fair bit of maneuvering to get the whole assembly into place and sitting into the intake boots.

All in place. Notice no slides

Some idea of the space constraints

That was the point when I was planning to flow test the injectors and go for first start but the fuel pump decided to give up the ghost. I had tested it previously but this time it refused to budge at all. Investigation pointed towards a short out between positive & ground within the pump. The investigation inevitably lead to this situation:

I may be able to to get the pump going again but for now the best course of action is to just get a replacement pump.

I have confirmed that all the sensors are now talking to the ECU properly. All that's left now before attempting starting is to replace the pump and determine injector flow rates & dead times.

Despite the setback from the pump, I'm very happy with the progress of the last week. Hopefully the next update will be with the bike running.

Monday 10 March 2014

Throttle Bodies

Sneak preview. :) The fuel rail has not been trimmed to length and the brackets to hold the rail in place are being worked at the moment but you can get the picture.

Monday 27 January 2014

Petrol tank and pump

I now have an mc22 petrol tank complete with inbuilt fuel pump, filter & pressure regulator assembly.

Using the mounting flange which I cut from the ZX6R tank, I cut a hole in a spare mc22 tank and welded the ZX6R mounting flange in place. Pressure tested for leaks and all is good. The tank will need a clean out before use but is otherwise ready to go.

Flange welded in place

With pump installed

Wednesday 22 January 2014

TPS mount & plumbing

A little more work on the project over the weekend. I have fabricated a mounting plate on which to mount the TPS to the end of carb #1. This is simply a 3mm aluminium plate shaped to incorporate the TPS mounting holes and fixed to the carb through the top clamping rod and by way of a threaded hole into the side of the float bowl chamber. The clamping rod end needed an additional 3mm spacer in order to bring it level with the float bowl chamber.
The movement of the throttle will be transferred to the TPS through an M3 bolt whose head has been ground flat to fit in the TPS. The end of the throttle rod will been drilled and tapped to take the bolt. To fix the position of the bolt in place, both a locking nut and thread locker will be used.

TPS mount plate

TPS in approximate position.

The fuel pump mount has been cut out of the ZX6R tank ready for transfer onto the spare mc22 tank. It seemed a pity to cut up a perfectly good tank but all for the better!

ZX6R fuel pump flange

A mock mounting of the throttle bodies and fuel rail revealed that there was interference between the fuel rail and thermostat housing. Fortunately, I was able to overcome that pretty easily by adding an 18mm spacer underneath the thermostat housing mounting bracket. That pushed the thermostat housing down low enough to provide clearance for the fuel rail.

Fuel rail mock fitting (very approximate)

Ideas to deal with plumbing to the fuel rail have been run through also. The first option was to use standard threaded -6 motorsport hose fittings on one end of the fuel rail. That would involve a threaded adapter to sit into the fuel rail end. A 90 degree swivel fitting would then be threaded onto the adapter and lead onto the hose. The issue with this setup was side clearance on the fuel rail. The adapter and 90 degree fitting would need c.50mm end clearance to fit between the fuel rail and frame, which was not available.

The second idea was to run the same type of setup but with a 180 degree swivel fitting threaded into the bottom of the fuel rail and back on itself up towards the fuel pump. A quick CAD mockup of the carb bodies with blanking plates, injectors and fuel rail installed showed there wasn't the clearance available for this either.

CAD mockup of injector and fuel rail position relative to carb body

The final (hopefully) solution is to run a banjo bolt into the end of the fuel rail and clamp the fuel hose onto a barbed fitting. This would achieve something similar to the first  option but with less end clearance required. The other end of the fuel hose will be clamped to the original ZX10R fuel hose fitting to allow it to clip onto the fuel pump.

Friday 17 January 2014

Throttle bodies & wiring

A new year brings with it a new approach again and some good progress. First the throttle bodies.

The plan to fully modify the existing carburetors to become permanent throttle bodies has been changed again and simplified. While putting the exact modifications required down on paper, I discovered that there is not enough wall clearance in the carbs to fully bore out the step in the casting that forms a small part of the venturi. That realisation then snowballed to simplifying all aspects of the modification.
  • Instead of interference fitting a block of aluminium into the slide orifice and machining out with the rest of the bore, I will now bond the original slides in place, fill them with high temperature epoxy resin and take them out to match the carb bore by hand. 
  • The main jet protrusion will be drilled out and smoothed out using epoxy.
  • The protruding float bowl pieces will be cut down to the level of the float bowl mating surface
  • New blanking caps will be made up to fit where the float bowls once fitted and an additional piece fixed towards the front of the carbs to allow for good injector seats. This will become clearer in photos.
  • Any imperfections and gaps between the carb body and the new blanking plates will be filled with temperature resistant JB Weld.
  • The only professional machining required will be to drill and bore the injector seats in the throttle bodies and the fuel rail.
The major advantage to the new (again) approach is that the majority of the work can be done using basic tools and so can be done quickly. Even better is the fact I am already pretty much ready to send off the carbs and fuel rail to machine the injector seats. Photo's of progress so far below.

Float bowl cut down to seat face

Mock up of float bowl blanking plates

Detail showing infill of gaps with JB Weld for injector seat

Slide filled with JB Weld

Rough filling of drilled out needle jet

I have also been tidying up the wiring somewhat to make it the entire setup more permanent. More to go and there's not a whole lot to see anyway but some idea of what the old CDI area currently looks like is below. Including resistors hard-wired inline into the VRIN wires.