Ross Rocker-V drive Engine

Andy Ross of Columbus, Ohio has been designing and building small air engines since the 1970's, including extremely innovative Alpha designs. Refer to Andy Ross' delightful book: Making Stirling Engines (Ross Experimental, 1993). More recently Andy Ross came up with the balanced Rocker-V mechanism design. He has published an article on the model Climax locomotive that he built using a small (20cc) Rocker-V engine, and allowed me to maintain a copy of this article " A Class A Climax Locomotive ". A number of these engines were built by students for a Senior Design class at Ohio University in 2001.

The Rocker-V drive mechanism is similar to the standard V drive mechanism (as shown in the Two Cylinder Stirling Engine animation by Matt Keveney ), however the addition of the rocker mechanism avoids the use of a heat exchanger section stretching across the V.


The Ross Rocker-V drive engine at Ohio University


   %============================================================== 
 
 
   function 
 
 
  rockerVdrive 
 
   % Ross rocker-V drive engine configuration 
 
 
   % Israel Urieli 4/14/02 & Martine Long 2/14/05 
 
 
   global 
 
 
  vclc vcle 
 
   % compression,expansion clearence vols [m^3] 
 
 
   global 
 
 
  vswc vswe 
 
   % compression, expansion swept volumes [m^3] 
 
 
   global 
 
 
  alpha 
 
   % phase angle advance of expansion space [radians] 
 
 
   global 
 
 
  crank 
 
   % crank radius [m] 
 
 
   global 
 
 
  dcomp dexp 
 
   % diameter of compression/expansion pistons [m] 
 
 
   global 
 
 
  acomp aexp 
 
   % area of compression/expansion pistons [m^2] 
 
 
   global 
 
 
  conrodc conrode 
 
   % length of comp/exp piston connecting rods [m] 
 
 
   global 
 
 
  ycmax yemax 
 
   % maximum comp/exp piston vertical displacement [m] 
 
 
   global 
 
 
  new fid 
 
   % new data file 
 
 
  fprintf('Ross rocker-V drive engine configuration\n'); 
 
   if 
 
 
  (strncmp(new, 
 
   'y' 
 
 
  ,1)) 
 
  vclc = input( 
 
   'enter compression space clearence volume [m^3]: ' 
 
 
  ) 
 
  vcle = input( 
 
   'enter expansion space clearence volume [m^3]: ' 
 
 
  ); 
 
  crank = input( 
 
   'enter crank radius [m]: ' 
 
 
  ); 
 
  conrodc = input( 
 
   'enter compression piston connecting rod length [m]: ' 
 
 
  ); 
 
  conrode = input( 
 
   'enter expansion piston connecting rod length [m]: ' 
 
 
  ); 
 
  dcomp = input( 
 
   'enter compression piston diameter [m]: ' 
 
 
  ); 
 
  dexp = input( 
 
   'enter expansion piston diameter [m]: ' 
 
 
  ); 
 
  phase = input( 
 
   'enter expansion phase angle advance [degrees]: ' 
 
 
  ); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , vclc); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , vcle); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , crank); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , conrodc); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , conrode); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , dcomp); 
 
  fprintf(fid, 
 
   '%.3e\n' 
 
 
  , dexp); 
 
  fprintf(fid, 
 
   '%.1f\n' 
 
 
  , phase); 
 
   else 
 
 
  vclc = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  vcle = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  crank = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  conrodc = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  conrode = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  dcomp = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  dexp = fscanf(fid, 
 
   '%e' 
 
 
  ,1); 
 
  phase = fscanf(fid, 
 
   '%f' 
 
 
  ,1); 
 
   end 
 
 
  acomp = pi*dcomp^2/4.0; 
 
  aexp = pi*dexp^2/4.0; 
 
  ycmax = conrodc + crank; 
 
  ycmin = conrodc - crank; 
 
  yemax = conrode + crank; 
 
  yemin = conrode - crank; 
 
  vswc = acomp*(ycmax - ycmin); 
 
  vswe = aexp*(yemax - yemin); 
 
  fprintf( 
 
   '\nRoss rocker-V drive engine data summary:\n' 
 
 
  ); 
 
  fprintf( 
 
   ' crank radius %.1f [mm]\n' 
 
 
  , crank*1e3); 
 
  fprintf( 
 
   ' compression piston connecting rod length %.1f [mm]\n' 
 
 
  , conrodc*1e3); 
 
  fprintf( 
 
   ' expansion piston connecting rod length %.1f [mm]\n' 
 
 
  , conrode*1e3); 
 
  fprintf( 
 
   ' compression piston diameter  %.1f [mm]\n' 
 
 
  , dcomp*1e3); 
 
  fprintf( 
 
   ' expansion piston diameter %.1f [mm]\n' 
 
 
  , dexp*1e3); 
 
  fprintf( 
 
   ' comp clearence,swept vols %.1f, %.1f [cm^3]\n' 
 
 
  , vclc*1e6,vswc*1e6); 
 
  fprintf( 
 
   ' exp clearence,swept vols %.1f, %.1f [cm^3]\n' 
 
 
  , vcle*1e6,vswe*1e6); 
 
  fprintf( 
 
   ' COMPRESSION ymin = %.1f(cm), ymax = %.1f(cm)\n' 
 
 
  ,ycmin*1e2,ycmax*1e2) 
 
  fprintf( 
 
   ' EXPANSION ymin = %.1f(cm), ymax = %.1f(cm)\n' 
 
 
  ,yemin*1e2,yemax*1e2) 
 
  fprintf( 
 
   ' expansion phase angle advance %.1f[degrees]\n' 
 
 
  , phase); 
 
  alpha = phase * pi/180; 
 
   %============================================================== 
 
 

The rest of the define function modules include the heat exchangers, regenerator, operating parameters, working gas parameters and Schmidt analysis, and all are independent of the engine type. The complete data file that defines the 20cc Rocker-V drive engine is rockerV.dat .


Stirling Cycle Machine Analysis by Israel Urieli is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License

View Site in Mobile | Classic
Share by: