6
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Arduinoでクルマのエンジンが動く? オープンソースECU Speeduino (4)回転数の確認

Last updated at Posted at 2019-01-07

#クランク角センサ信号を入力し、回転数を確認する
前回記事

クランク角センサの疑似信号を用いて、Speeduinoでエンジン回転を認識するか確認します。

##用意するもの

  • Arduino Mega
  • Arduino Uno、または、互換ボード

##SpeeduinoのI/Oポート確認
util.inoに定義されています。

デフォルトのI/Oポートは、以下のように設定されています。

  • pin 19:クランク角センサ
  • pin 18:カムセンサ(2ndクランク角センサ)
utils.ino

    case 3:
      //Pin mappings as per the v0.4 shield
      pinInjector1 = 8; //Output pin injector 1 is on
      pinInjector2 = 9; //Output pin injector 2 is on
      pinInjector3 = 10; //Output pin injector 3 is on
      pinInjector4 = 11; //Output pin injector 4 is on
      pinInjector5 = 12; //Output pin injector 5 is on
      pinInjector6 = 50; //CAUTION: Uses the same as Coil 4 below. 
      pinCoil1 = 40; //Pin for coil 1
      pinCoil2 = 38; //Pin for coil 2
      pinCoil3 = 52; //Pin for coil 3
      pinCoil4 = 50; //Pin for coil 4
      pinCoil5 = 34; //Pin for coil 5 PLACEHOLDER value for now
      pinTrigger = 19; //The CAS pin
      pinTrigger2 = 18; //The Cam Sensor pin
      pinTPS = A2;//TPS input pin
      pinMAP = A3; //MAP sensor pin
      pinIAT = A0; //IAT sensor pin
      pinCLT = A1; //CLS sensor pin
      pinO2 = A8; //O2 Sensor pin
      pinBat = A4; //Battery reference voltage pin
      pinDisplayReset = 48; // OLED reset pin
      pinTachOut = 49; //Tacho output pin  (Goes to ULN2803)
      pinIdle1 = 5; //Single wire idle control
      pinIdle2 = 6; //2 wire idle control
      pinBoost = 7; //Boost control
      pinVVT_1 = 4; //Default VVT output
      pinFuelPump = 45; //Fuel pump output  (Goes to ULN2803)
      pinStepperDir = 16; //Direction pin  for DRV8825 driver
      pinStepperStep = 17; //Step pin for DRV8825 driver
      pinStepperEnable = 24; //Enable pin for DRV8825
      pinFan = 47; //Pin for the fan output (Goes to ULN2803)
      pinLaunch = 51; //Can be overwritten below
      pinFlex = 2; // Flex sensor (Must be external interrupt enabled)
      pinResetControl = 43; //Reset control output

##結線
Arduino Mega(Speeduino)とArduino(Ardu-Stim)を以下のように結線します。

Speeduino Ardu-Stim
19:Crank 8:Crank
18:Cam 9:Cam
GND GND

##Arduino Mega(Speeduino)とArduino(Ardu-Stim)をPCに接続
IMG_1063.JPG

##TunerStudio

  1. TunerStudioを起動し、前回作成したProjectを開く
  2. Arduino Mega(Speeduino)のシリアルポートを設定し、通信を接続
  3. File>Load Tuneより、reference/Base Tunes/Speeduino base tune.msqを開き、デフォルト設定データを書き込む

##Device Druid

  1. Device Druidを起動
  2. Arduino (Ardu-Stim)のシリアルポートを設定し、通信を接続
  3. Wheel Options>Choose wheelsで25を入力
  4. Topメニューに戻り、Set Fixed RPMで回転数を入力(例えば1500)

##TunerStudioでの確認
設定した回転数がメーターに表示されます。
image.png
回転数をスイープさせてみます。:smiling_imp:

  1. Device DruidのSet Swept RPMで500,3000,1000を入力
  2. TunerStudioのTuning>Real-Time Displayを開く

回転数の変化をプロッターで確認できます。
500<->3000 RPM(1000rpm/sec)

RealTime.gif

##最後に
クランク角センサの信号を入力し、Speeduinoで回転数の確認ができました。:smiley:
次回は、インジェクターとイグニッションの出力信号を確認します。

6
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?