TOP  >  なーお'nぶろぐ  >  なーお

なーお さんの日記  [ メールで投稿 ]

755件のうち701 - 710件目を表示しています。


[投稿日   ] [タイトル   ] [アクセス数   ]
7月
5 (土)

 引き続き、mbedをいじってます。
 
 先日入門したばかりでもとても便利と感じるmbedのオンラインコンパイラ。

 オンライン上で先人の公開したライブラリやプロジェクトをさくっとインポート出来たり、自分のPC環境に依存しない、デバイス毎に異なる設定などは予め設定済みで、マイコンの種類を変えても少しの変更ですぐに移植できる、などなどとても良くできていて、私のような初級者には大変ありがたいものであります。

 しかしですね、、やっぱりIDEでオフラインコンパイル、ステップ実行デバグをやりたいですね。 ということでmbedと先人の知恵を頼ってやってみました。

  • 概要
     トランジスタ技術2014年3月号には付録にトラ技ライタが付いてくる。 これをEIL-MDK(μVision4)でコンパイルしたバイナリをCMSIS-DAP経由でマイコンにロードするのと、デバグで使います。 UART(USBシリアル)は同時に使えなかったので(やり方がまずかった?) 相変わらずFT232RLを繋げています。
     もっと楽をしたい方は、素直にSwitchScienceでLPC1114のmbedボードを買ったほうが良いと思います。。たぶん。
     →その後、UARTもCMSIS-DAPも同時に接続できるようになり、FT232RLは不要になりました。
  • 接続図
    左図ではUART(USBシリアル)用にFT232RLを入れていますが、これは不要になり右図のようにトラ技ライタ側のUARTポートからTx,Rxに繋ぎます。
    FT232RLあり   →   なし
    t_0157dfdec10136d9c8704638855b331dbb.jpg t_086d2ba4d9932133a57ab1b44d37a5be3a.jpg
  • 現物
     左図のブレッドボードの上段左側がトラ技ライタ。右側がLPC1114マイコンとUSBシリアルFT232RL。 右下のは次回テスト予定のRS485ドライバチップとディップSW。 右図はFT232RL無しの最終状態。
    t_00a4490651dd65c6a289fe2b323db4525f.jpgt_07d532f1048929d0cae506a1bb9f318a1e.jpg
  • μVision4でデバグポートにトラ技ライタを指定したところ。 速度は10MHzでも行ける。 μVision5では100KHzまでしか出なくて断念した。
    t_02d94c6a6211ae19a8eedc5da01bfe72c0.JPG
     →その後、トラ技のファームウエアではなく、このページのファームウエアに書き換えた後で、トラ技ライタをUSB接続した状態でこのページのUART最新ドライバをインストールしたところ、無事に全て使えるようになりました。 μVision側設定画面はこうなりました。
    t_04ba0bb0d941da6f4b1f40864d3337909a.JPG
    Windows8.1上のデバイス表示に、3つの接続が出現していればOK。 1つしか出ない場合は、USBドライバがインストール出来ていないです。
    t_07a231ae1fa5cec2e4427ff221f4e42a4b.jpg
  • 割り込みイベントが発生すると、デバグがここで止まってしまい再開不能でマイコンをリセットすることになる。 今のところ解決策がありません、どなたかご存じの方、Help me。
    t_03be0ac6617d7a3f3ddab406bff316e234.jpg
     もしかするとリアルタイムOS使っていないとだめなのかな? デバグしなければきちんと動くんだけど・・
     →これもトラ技のファームから変えて、さらにnRESET配線1本をきちんと結線することでOKになりました。 nRESETを結線すると、LPC1114に付けたタクトSWでリセットできなくなるので、その際には毎回ライタからのnRESET結線を外してSWを押す、という操作が必要になります。
     →上のほうの接続図のようにnRESET中間に1KΩの抵抗を入れることで、そのままリセットも効くようになりました。正しい回路ではないと思いますが、実用上は今のところ問題ありません。

 参考:

  • トラ技ARMライタを mbed interface にする(LPC1114FN28編
    まさにこれ!と思ってここのファームウエアを試してみましたが、UART(comポート)が出てこない、CMSIS-DAPが出てこない、という状態で断念。 PCがWindows8.1だからかなあ。。
    →再度試したところ、下記ページにあるUARTドライバをインストールしたら全てOKになりました。
    但し上のページの結線は、何かおかしいです。nRESETの配線が別のところへ行っている気がします。
    • μVision4でデバッグ!(mbed-MACRUM)
      トラ技ライタでは無くファームウエアはここのものは使いませんが、作業の流れはこれが近いです。ファーム書き換え後のUARTドライバはここからダウンロードしてインストールします。
    • Keil MDK-ARM v4 のダウンロード
      このページのv4のリンクより。 ライセンスフリー版では32Kbの制約があります。 v5は通信速度が出なかったです。 →これも再度確認したら問題ありませんでした。
    • mbedをIDEで使う(野良2-mbed
      μVision4のあたりが詳しいです。
  • トラ技のページ
    ファームウエアはここから「トラ技ARMライタ基板をCMSIS-DAP(デバッガ)として使うときのファームウェア」をダウロードして流し込みます。 →当初はこれでやっていましたが、後で別のファームでOKになり不使用です。

 次回は、この時に仕事で作ったPC上のVB.NetなRS485シミュレータを、LPC1114マイコンに置き換えて通信してみるテストです。

続きを読む | 閲覧(23444) 
6月
30 (月)
カテゴリー  マイコン
タグ  mbed プログラム デバイス C/C++

まずは現物から

  • LPC1114FN28とFT232RL USB/serialコンバーターで、シリアル通信+サーボモーターを回してみる。
    t_00215f18aa1dcaf25bbcdb400acb72dfcb.jpg
    以下、準備から実際のプログラムソースまでメモっておきます。

まず頭に入れてくべきこと anchor.png

準備したもの anchor.png

    • mbed対応のマイコン。今回は、LPC1114FN28 を、秋月電子で購入。 1個たったの120円!(税込)
    • USB-シリアル変換モジュール FT232RL 秋月で購入
    • Arduinoスターターキット SGK-ARD-KIT 千石電商で購入 arduino uno 付きで4,940円。 arduino unoの他に付属のセット品が色々入っていて、初めてには良いですね。 arduinoからいじり始めてみたものの、mbedを教えていただいたら断然そちらが面白くなってます。

配線 anchor.png

  • 参考
    • mbed LPC1114でLチカしてみた(1):しなぷすのハード製作記
       マイコンとFT232RLの接続が参考になります。 プログラムを書き込んだあとリセットしなくても済みます。 なお、書き込みソフトはこのページの要領ではなく、LPC1114限定で下記ページのものが使いやすいです。
    • mbed LPC1114でLチカしてみた(2):しなぷすのハード製作記
       LPC1114限定で「LPCISP」というソフトを公開しておられます。USB/serialコンバーター経由で一発書き込み、即座にリセットが働くので、楽ちんです。
      LPCISP.jpg
  • ハード図
     ブレッドボードを使うとテストは楽にできるけど、一度バラしたら再現するのが面倒になっちゃいますんで、ちゃんと図面を書くクセをつけたいですね。今回は資料への使いまわしがしやすいようにEXCELでこんな感じで書いてみました。
    • LPC1114のLED回路はソース出力(PNP)でプラスコモン、FT232RLのLEDモニタ回路は、シンク出力(NPN)でマイナスコモンになっているみたいで、ちょっと混乱します。
       工業用制御部品に関していえば、日本国内やアジア圏ではシンク(NPN)でマイナスコモン、欧州ではソース出力(PNP)でプラスコモン が多いですが、欧州への輸出時にはCEマーク表示の関係で本質安全の考え方から必ずPNPにしないといけなくなるため、国内でもPNPへの変更が徐々に進んでいる・・ のかなあ?
       組み込み部品での状況は全くわからずです。
mbed_UART_SERVO.jpg
00215f18aa1dcaf25bbcdb400acb72dfcb.jpg

プログラム anchor.png

 mbedはarduinoと違い、ほぼ素のC/C++で書けます。 オンラインコンパイラでビルドが通ったプロジェクトをエクスポートして、外部のIDEで編集・コンパイルできることからもそれを実感できます。

 とはいえまずはオンラインコンパイラで。

mbed_WorkSpace.jpg
使用ライブラリ anchor.png
  • Servo
     mbedのオンラインコンパイラ上の「Import」でキーワード「Servo」で検索し、sford cstyles さんの mbed R/C Servo Libraryを試しに使ってみました。
  • MySerial
     自作ライブラリ MySerial です。mbed標準のRawSerialクラスを継承し、受信文字列のchar配列格納を簡単にできるようにしてみました。 現時点でのソースを貼っておきます。
    • GetString メソッドは、テンプレート化でオーバーロードしてあり、引数にポインタ変数指定でも char配列指定の参照でも使えるようにしました。
    • Wait時間の設定を追加してあります。
       その他APIは、こちらを参照
    • MySerial.h
      Everything is expanded.Everything is shortened.
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      
      -
      |
      |
      |
      |
      |
      |
      |
      |
      |
      !
       
       
       
       
       
      -
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      !
      -
      |
      |
      -
      |
      |
      |
      !
      |
      |
      -
      |
      |
      |
      !
      |
      |
      -
      |
      |
      |
      |
      !
      |
      |
      -
      |
      |
      |
      |
      !
      |
      -
      |
      !
      |
      |
      |
      |
      |
      !
       
       
      
      /** mbed Serial Library extend RawSerial
       * Copyright (c) 2014 Naoki Okino
       *
       * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
       * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
       * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
       * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
       * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
       * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
       * THE SOFTWARE.
       */
      #ifndef MBED_MYSERIAL_H
      #define MBED_MYSERIAL_H
       
      #include "mbed.h"
          
      /** MySerial control class, based on a RawSerial
       *
       * Example:
       * @code
       * #include "mbed.h"
       * #include "MySerial.h"
       * 
       * MySerial pc(USBTX,USBRX);   //instance of MySerial Class
       * char cWord[16]; //receive chars  or cWord[256], cWord[1024] etc..
       * 
       * void readbuf()
       * {
       *   // int iRtn =  pc.GetString(6,&cWord);    //Serial received chars by pointer cWord
       *    int iRtn =  pc.GetString(6,cWord); //Serial received chars byref of cWord
       * }
       * int main() {
       *    pc.baud(9600);                  //set baud rate
       *    pc.format(8, MySerial::None, 1);//set bits for a byte, parity bit, stop bit
       *    pc.SetRxWait(0.01, 0.001);       //set wait getting chars after interrupted, each char
       *    pc.attach( readbuf, MySerial::RxIrq );    //Set Interrupt by Serial receive
       * }
       * @endcode
       */
      class MySerial : public RawSerial{
          
      public:
          /** constructor to get chars received by serial
           * 
           * @param PinName tx
           * @param PinName rx
           */
          MySerial(PinName tx, PinName rx);
         
          /** set wait getting chars after interrupted
           * 
           * @param float _fRxStartWait wait getting a 1st char after interrupted
           * @param float _fRxEachWait wait getting each char
          */
          void SetRxWait(float _fRxStartWait, float _fRxEachWait);
       
          /** function to get chars after received chars by serial
           * 
           * @param int size for get chars
           * @param *cWord returns got chars by pointer
           * @param returns success by 0
           */
          virtual int GetString(int size, char *cWord);
          
          /** overload function to get chars after received chars by serial
           * 
           * @param int size for get chars
           * @param cWord returns got chars by ref
           * @param returns success by 0
           */
          template <class X> int GetString(int size, X cWord)
          {
              return GetString(size, &cWord);
          }
       
      protected:
          float fRxStartWait;
          float fRxEachWait;
          
      };  /*  class MySerial  */
       
      #endif
    • MySerial.cpp
      Everything is expanded.Everything is shortened.
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      
       
       
       
      -
      |
      |
      !
       
       
      -
      |
      |
      !
       
       
      -
      |
      |
      |
      |
      |
      |
      -
      -
      |
      !
      |
      -
      |
      -
      !
      |
      |
      !
       
      !
      
      #include "MySerial.h"
       
      MySerial::MySerial(PinName tx,PinName rx):RawSerial(tx,rx)          //constructor
      {
          fRxStartWait = 0.01;    //wait getting a 1st char after interrupted
          fRxEachWait = 0.001;    //wait getting each char
      }
       
      void MySerial::SetRxWait(float _fRxStartWait, float _fRxEachWait)
      {
          fRxStartWait = _fRxStartWait;   //wait getting a 1st char after interrupted
          fRxEachWait = _fRxEachWait;     //wait getting each char
      }
       
      int MySerial::GetString(int size, char *cWord)            //by pointer
      {
          int i=0;
          int ichar;
          memset(cWord, '\0', strlen(cWord));  //initialise chars
       
          wait(fRxStartWait);
       
          while(1) {
              if(!readable())    {
                  break;
              }
              ichar = getc();
              if(i<size) {
                  cWord[i] =ichar;
                  //putc(ichar);
              }
              i++;
              wait(fRxEachWait);
          }
          return 0;
      }
メイン anchor.png
  • シリアルコマンド
    ただの実験なので、<STX><ETX>などの制御コマンドは一切無しです。(汗)
    • 「start」で開始
    • 「pxxx」(xxxは角度)で位置決め
    • 「stop」で停止
      です。
  • 受信の割り込みと、50ms定時タイマ割り込みを受けてメインで動作及びLチカさせてみました。
    • 割り込みのIRQ変数名は、シリアルが「UART_IRQn」、定時タイマが「TIMER_16_0_IRQn」でしたので、割り込み優先度や割り込み禁止を個別に管理できます。 この辺の定義は、こちらに全部書いてありますね。
  • まだ試していませんが、フロー制御を入れないと9600bps以外では取りこぼしが発生します。
  • ソース
    volatile のつけ方などわかっていないので、まだ適当です。
    • main.cpp
      Everything is expanded.Everything is shortened.
        1
        2
        3
        4
        5
        6
        7
        8
        9
       10
       11
       12
       13
       14
       15
       16
       17
       18
       19
       20
       21
       22
       23
       24
       25
       26
       27
       28
       29
       30
       31
       32
       33
       34
       35
       36
       37
       38
       39
       40
       41
       42
       43
       44
       45
       46
       47
       48
       49
       50
       51
       52
       53
       54
       55
       56
       57
       58
       59
       60
       61
       62
       63
       64
       65
       66
       67
       68
       69
       70
       71
       72
       73
       74
       75
       76
       77
       78
       79
       80
       81
       82
       83
       84
       85
       86
       87
       88
       89
       90
       91
       92
       93
       94
       95
       96
       97
       98
       99
      100
      101
      
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
      -
      |
      |
      !
       
       
      -
      -
      !
      !
       
       
      -
      |
      |
      -
      !
      |
      -
      |
      |
      -
      |
      |
      -
      |
      |
      |
      -
      |
      !
      -
      |
      |
      !
      !
       
       
      -
      |
      |
      -
      |
      !
      |
      |
      |
      |
      |
      |
      |
      |
      |
      |
      -
      |
      |
      |
      -
      |
      |
      |
      !
      |
      |
      -
      |
      -
      |
      |
      !
      |
      -
      !
      !
      !
      
      #include "mbed.h"
      #include "Servo.h"
      #include "MySerial.h"
       
      Servo myservo(dp18);
      MySerial pc(USBTX,USBRX);         //instance of MySerial Class
      Ticker timer;
      DigitalOut led2(LED2);            //alive check LED
       
      volatile int cntRx=0;
      volatile int cntRx_old=0;
      volatile int timeUp=0;
      volatile int timeUp_old=0;
       
      char cWord[6]; //receive chars  or cWord[256], cWord[1024] etc..
      char *pCword = cWord;    //pointer for cword
      const char ccStart[6] = "start";
      const char ccStop[5] = "stop";
      const char ccMove_[2] = "p";
       
      int readSize = 5;
      int doStatus;
      int iDeg;
       
      void atRx()
      {
          NVIC_DisableIRQ(UART_IRQn);
          cntRx++;
      }
       
      void atTimer()
      {
          //NVIC_DisableIRQ(TIMER_16_0_IRQn);
          timeUp++;
      }
       
      void readbuf()
      {
          pCword = cWord;    //pointer for cword
       
          //int iRtn =  pc.GetString( readSize, &cWord[0] ); //Serial received chars by pointer of cWord
          int iRtn =  pc.GetString( readSize, cWord ); //Serial received chars byref of cWord
       
          if(strcmp(cWord, ccStart)==0) {     // start
              doStatus=1;
              printf("started\n");
          } else if(strcmp(cWord, ccStop)==0) { // stop
              doStatus=0;
              printf("stopped\n");
          } else if(cWord[0]==ccMove_[0]) { // 1st char matches
              pCword++;                    // increment pointer to get after 2nd chars
              iDeg = atoi( pCword );
              printf("%d\n",iDeg);
          } else {                        //no action except for start/stop
              printf(" no match %s\n" , cWord);
          }
          if ((doStatus == 1) && (0 <= iDeg) && (iDeg <= 180)) {
              wait(0.01);                           // waits for the servo to get there
              myservo.position(iDeg - 83.0);
          }
      }
       
      int main()
      {
          pc.baud(9600);                  //set baud rate
          pc.format(8, MySerial::Odd, 1);//set bits for a byte, parity bit, stop bit
          //pc.format(8, MySerial::None, 1);//set bits for a byte, parity bit, stop bit
          //pc.set_flow_control(MySerial::RTSCTS,dp26,dp25);
          pc.SetRxWait(0.01, 0.001);       //set wait getting chars after interrupted, each char
       
          wait(0.25);     //startup wait
       
          pc.attach( &atRx, MySerial::RxIrq );    //Set Interrupt by Serial receive
          NVIC_SetPriority(UART_IRQn, 120);
          timer.attach( &atTimer, 0.05 );
          NVIC_SetPriority(TIMER_16_0_IRQn, 10);
       
          myservo.calibrate(/* range */ 0.00099, /* angle +/- */ 90.0);
       
          while(1) {
              wait(0.01);
       
              if(cntRx != cntRx_old)
              {
                  readbuf();
                  cntRx_old = cntRx;
                  NVIC_EnableIRQ(UART_IRQn);
              }
       
              if(timeUp != timeUp_old)
              {
                  if( 10 <= timeUp )
                  {
                      led2 = !led2;
                      timeUp=0;
                  }
                   timeUp_old = timeUp;
                  //NVIC_EnableIRQ(TIMER_16_0_IRQn);
              }
          }
      }

実行結果 anchor.png

シリアルコンソールには、定番のTeraTermではなく、「RS232cテストツール」というフリーソフトを使ってみました。

下図のように、コマンドを送ると帰ってきたアンサーが表示されます。

Comm.jpg

総括 anchor.png

 mbed、おもしろいです。 C/C++の入門にもなるし、ハード回路の勉強にもなります。

 次回は、オフラインでのコンパイルとデバグ環境にチャレンジしたいと思います。

inc​/mbed

続きを読む | 閲覧(26168) 
7月
13 (日)

mbedで色んなことが簡単に出来るだろうことはわかったけど、遊びと勉強ばかりでは面白くないので、仕事に何か応用できないかと考えた。

そこでこの時にVB.netで作ったRS485通信のPC内シミュレータを、mbed LPC1114に移植できれば複数台の通信確認が取れるなと考えて、RS485通信トランシーバIC (TE)SN75176BP とブレッドボードその他を購入しやってみました。 :-)

今回は、3台分の機器側に成りすますシミュレータをブレッドボード上に配線します。 ブレッドボード上に1台ずつ、計3枚の普通のブレッドボードが必要。

  • 購入部品 (LED、抵抗、配線材などは手持ち品を流用)
    名称型番購入先数量単価(税抜)
    普通のブレッドボードEIC-801スイッチサイエンス3枚257円(税込)
    mbed対応マイコンLPC1114-FN28
    生産中止(?)品
    秋月電子通商3個120円
    RS485/RS422トランシーバIC(TE)SN75176BP秋月電子通商3個80円
    ディップSW5P秋月電子通商3個60円
    タクトSW各色秋月電子通商3個10円
  • 配線図
    • 電源はトラ技ライタ経由USBから取る。
    • ディップSWで局番(今回は1~3)設定可能とする。
    • SN75176BPのDE端子は、機器1台なら3.3V印加しておくだけでOKだが、機器2台以上マルチドロップの場合は、マスタからのコマンドに返信するとき以外はバスを解放する必要があるため、マイコンのdp4を返信直前にHigh、返信後20msec後にLowとするソフト処理を行う。
      • マイコン側は3.3Vなのでこのままで良いか不安もあったけど動いてるから大丈夫?
      • マスタ側ソフトは、このディレイ時間20ms分の待ちが必要。
      • この信号のHighの時に赤LEDを点灯させる。
    • RS485バスラインのプルアップ抵抗(R5)、プルダウン抵抗(R6)の抵抗値は、実際の路線長で決める必要があると思うのだけど、今回はテストなので小さ目の抵抗を入れてみた。
    • 生存確認用にLED1を点滅。 UARTポートと共に割り込みプログラムとする。
t_0009cd62ac2a8703e7120df606673547f5.jpg
  • プログラム
    • 今回は、仕事の秘匿義務の兼ね合いもあるので非公開です。すみません。
    • コーディング・デバグは、ある程度の段階でmbedオンラインコンパイラからエクスポートして、μVision4にて行いました
  • 配線状況
    テストなのでヒドイ状態ですね。(汗)
    t_01caef4c3292453d4463c7fe409610ba41.jpg
    下記動画の際には少しだけ整理しました。
  • 動画
    PLC側のテスト画面と共に映してみました。ボーレートは38,800bps。
    機器1→機器2→機器3と通信先を切り替えてサイクリックに通信します。 機器側が受信し送信中に赤LEDが点灯します。 1回のコマンドで1点灯で、点滅回数分のコマンドを処理しています。

 今後も仕事で通信案件が来た時には、こんな感じでシミュレータを作って事前テストするですね。 部品単価が安いので、USB/RS485コンバーターを買うよりずっと安価にできますし。 :-D

 ここまでテストばっかりやってきたけど、そろそろ実際に動かす何かを作るかなあ。。 :roll:

続きを読む | 閲覧(23318) 
9月
20 (月)
カテゴリー  マイカー
タグ  CX-30 MAZDA SPIRIT

MAZDA SPIRIT UPGRADE D1.1 実施してきました!

 個人的には、実施前後のTorqueProでの比較はデータ更新周期が追い付いていなくて微妙な感じでしたが、実施の効果は明らかで、やってよかったです。 五万円の価値は、、人それぞれということで。

t_00cbf55b88c9286768658a5a6d370e74b4.jpg

■MAZDA SPIRIT UPGRADE D1.1
 アップグレード実施前後の比較動画(オリジナル長編版)
 

■OBD2/Torque Pro を使用して、走行データ表示画面でグラフ表示させ、前後比較を行ってます。

◇発進加速

  • アクセル開度40% ゆっくりめ
  • アクセル開度40% 早め
  • アクセル開度80~100%全開 / 40~60km/h中間加速

◇高速合流
◇実行前後比較とまとめ

◇映像は安物ドライブレコーダー、スマホスクリーン動画との  合成でタイミングが若干ズレていたりしますがご容赦願います。

■MAZDA SPIRIT UPGRADE D1.1
 アップグレード実施前後の比較動画(短編解説版)

■MAZDA SPIRIT UPGRADE D1.1

  • EGRバルブ制御を中心とした、エンジン制御のブラッシュアップで 発進時などアクセルを踏み込んだ時のもたつきを改善。
     
  • 最大トルク発生回転数を超えた領域でのトルク改善で、最高出力を116ps→130psにアップ。 など
     
     https://www.mazda.co.jp/carlife/spirit-upgrade/d11/

●個人的には、発進時のもたつきが気になる人、高速でもっとパワーが欲しい人には、アップグレードをオススメします。
 
 この動画が参考になれば幸いです。


いやー、それにしても、AVIUtilsでがっつり動画編集は慣れないこともあって大変でした。

t_0167a52c7e592de29e495ac067bd135cea.JPG

 そして最後の1文で力尽きて変換ミスをやらかしました。 :-o

「アクセルオン時の応答性の向上と3000rpm以上のトルクアップを時間できました」
  ↓
「アクセルオン時の応答性の向上と3000rpm以上のトルクアップを実感できました」

■CX-30 XD L-Package (FF)

■BGM Youtube Free Lisence Music
 Channel:Quincas Moreira
 https://www.youtube.com/channel/UCL1zFMJb0sthwdAlGjGbdyg
 https://www.youtube.com/hashtag/quincasmoreira

  1. Studio 2020
  2. Eletrosamba
  3. Disco Knights
  4. Central Park
  5. Hip Bone
  6. Latin Lover

 良い楽曲と演奏です。ありがとうございます!

続きを読む | 閲覧(7965) 
7月
28 (土)

今年のOMTOMO MOOKの付録は、なんと今や人気急上昇中のMarkAudio製、アルミマグネシウム合金コーンの8cmフルレンジユニット「OM-MF5」! 実は私自身はMarkAudioのユニットを使ったことが無いのですが、巷では大歓迎の様子で期待大です。発売直後の状況を見て、良さそうだとのことで買いました。

t_00cf90f86a29f31960997574c58dd77d79.jpg

フレームが同社の市販ユニットとは違いプレスフレームで、少し板厚が薄めかな? しかしビス5本止め、十分な強度とリヤ開口面積。 制振処理をすればなかなか良さそうな感じです。

t_01d5a61948fbae324e9db8f7c96e5dc88d.jpgt_02872a5d353ff2fc859601e68919755320.jpg

自作プリアンプのRchの音が出なくなっていたのですが、やる気を出して基板の裏からさぐってゆくと、ハンダ溶け込み不良2か所を発見し、修正完了。
そしてOM-MF5を、クリアミントにネジ1本で仮付けし音質の確認。2016年のFostexのアルミコーンや、昨年のPioneerのユニットに感じたような高域のクセが少なく、低域もよく出て全域で品位の高い音質と感じます。

ボーカルはFostexに慣れてしまった私の耳には少々大人しめですが、MarkAudioのフルレンジユニットはコーン絞りが浅めなので、そのためか音の広がりに無理がない気がします。

さすがに、FE88-Solと比べると情報量の違いで叶いませんが、中域を中心とした音のまとまり、まとめ易さでは勝っているかもしれません。付録ユニット史上最高音質かもしれませんね。 大好きな松岡直也などのフュージョン系を聞くなら、FE88-SolよりこのOM-MF5のほうが向いています。

t_035c00e55bd6c71c0d00cf63f8a206ed39.jpg

コンテストも開催されます。締め切りが12月なので余裕がある反面、参加者全員の完成度が上がって、激戦になること必至ですね。
私も参戦する気持ちが高まってきました。 肝心のアイデアは少しづつ出てきていますが、まだ決定打に欠けます。もう少し、じっくり考えてから設計に着手しよう。

続きを読む | 閲覧(20675) 
1月
26 (日)

LAFESTA Highway SGTAR のフロントスピーカーを交換、ドアのデッドニングを行いました。

満足とまではいきませんが、そこそこ聴けるレベルにはなったかな。

詳細は、以下のページにて。
LAFESTA HS フロントスピーカー更新、ドアのデッドニング

続きを読む | 閲覧(15032) 
1月
30 (木)

先日、Fドアスピーカーのインストールをしたばかりで悪くないのだけど、普段家で聴いているフルレンジとの違いが大きくてやっぱり不満が募る。

ネットを徘徊して、ALPINEのDDドライブウーハー(DLX-F17W)がいいか、FOCAL(170V)がいいかな、と悩んだけど、 ノーマークだったClarionで安くて良さそうなのを発見。 昨日AUTOBACSに行って試聴してみたけど、高域を除いてはコスパ最高と思える音でした。(あくまで値段の割には、、ね)

(Clarion) SRT1733S、実売1万円で5cm同軸ミッドレンジ付き17cmウーハーとセパレートツイーターだもの。 メーカーページで「ボーカル強化」と言うだけあって、F特みると3KHz付近を持ち上げているおかげでボーカルが明瞭に聞こえるのだと思う。
ツイーターは多分、今のDAYTONをそのまま使うか、別のに乗せ換えてこのClarionのは使わないと思うけど。

まあ、安いし、1Set買ってみて良いかもしれない。
http://www.clarion.com/jp/ja/products-personal/speaker/SRT1733S/hilight/

・・・ ということで早速、Alpineのバッフルボードと一緒にAmazonでポチった。 本日早速入荷。うしし。 :-D

t_00d0ffa3736d8a9d924552cae018aa9609.JPG
(Clarion) SRT1733S 17cmセパレート3Way (実際にはセパレート2Wayとも言える)

t_016d3102a528e2e097f71f22154b00c0cc.JPG
(Alpine)バッフルボード KYX-T171B

内容物とユニット外観
22_SRT1733S.JPG23_SRT1733S.JPG
メインユニット(ウーハー&コアキシャルミッドレンジ)外観、端子台部分
24_SRT1733S.JPG25_SRT1733S.JPG
5cmミッドレンジ部分外観
26_SRT1733S.JPG27_SRT1733S.JPG

28_SRT1733S.JPG
 ユニット背面のシールを剥がすと、ポールピースには背圧ベント穴がある。けれども正面にはスコーカーが付いており背圧はかからないため、単なる配線ルートになっている。
 ミッドレンジ用のハイパスフィルターがここに付いているかもと思っていたが、ここには無いし、ミッドレンジ裏にも見当たらない・・ まさか、スルーで繋いでる? んなことないわなあ。

29_SRT1733S.JPG
 ツイーターのハイパスフィルターは、4.7μFの小さなコンデンサ。 オーディオグレードの良質フィルムコンに変えれば少し音質向上しそうだ。 但し、今回はこれもツイーターも使わない。

30_SRT1733S.JPG
 鉄とプラスチック製フレームの鳴きがありそうなので、防音シートを切り出して表裏の要所に貼り付け。

32_Buffle.JPG
 Alpineのバッフルボードの内径は140mm。 外寸も制約があり、これ以上の径のスピーカーは実装不可能、アウター化の道しか無い。

というところで、明日の空き時間にでも取り付けてみようと思う。

続きを読む | 閲覧(20199) 
1月
31 (金)

 昨日入荷したスピーカー、(Clarion) SRT1733Sのウーハー/ミッドレンジユニットのみを空き時間にインストールしました。

 先日付けたBoston Acoustic の13cmウーハー、5.0LF、9年間も蔵に保管されていたので当初は低音が出なかったのですが、しばらく鳴らしているうちにほぐれてきて少し不足かな、という程度まで出ていました。

 しかし、普段ホームで聴いているフルレンジスピーカーの中域とはちがう無理して出しているような中域は聴いていて楽しさが半減。。 :-(

 今度のSRT1733Sは、17cmウーハーに5cmミッドレンジがコアキシャル配置されていて、中域~中高域が素直に出てきます。 値段が安いので解像度も透明感も高くないですが、音圧レベルとしてきちんと素直に出てくるとかなり違いますね。 フルレンジの音に近いです。 実売1万円くらいなので、中域重視の私にとってかなりコスパが高い。 16~17cmの2ウエイのウーハーでこれだけの中域・中高域が出るスピーカーとなると、3万円オーバーになるのではないかと思います。

 ツイーターはDaytonのをそのまま使用し、SRT1733S付属のツイーターは不使用です。 音も聴いてみていません。(汗) なのでこのスピーカーの高域は評価対象外です。
 取り付け位置はドアミラー内側で試していたのですが、中域の良く出るドアスピーカーに変えたら定位がばらけてしまったので、少し下に下げました。 ドアノブの前あたり。

 なお、低域はこのクラスのユニットの常にならって、ダンピングが足りずポコポコ鳴る感じが拭えません。 おそらくQtsが高いのでしょう。(1.0以上ありそう) でもまあ、低いほうが全然出ないわけではないですし、それほど悪くもなく値段を考えたら頑張っていると思います。 但し、デッドニングは強く推奨ですね。

 ところで、このクルマのディーラーオプションのナビ、クラリオン製の MC-312D-Aですが、 そんなに悪くもないなという印象に変わってきています。 さすがにノートに付けた(KENWOOD)彩速ナビMDV-737DTには敵いません。

 純正ナビにプラスのグレードアップ、デッドニング含めて総額2万円ちょっとでここまで出来ました。 コスパはかなーり高いと自負します。  これでしばらくは落ち着くかな。 ツイーターの位置はしばし試行錯誤しそうだけど。

**
過去ログ


(Alpine)バッフルボード KYX-T171B取付け

(Clarion)...
続きを読む | 閲覧(18459) 
1月
20 (月)

お寒うござんす!

今日は平日にも関わらず、100円ショップ行ったり、はんだごて握ったりして遊んでしまった。

夕方には、先日秋葉原で仕入れていたツイーターを、LAFESTA Highway STAR に仮設しました。

カーオーディオをいじるのはいつ以来だろう? 前車LAFESTAでは結局最後までノーマルのままだったから、リバティ以来かな。

  • ツイーター諸元
    • メーカー:DAYTON AUDIO (USA)
    • 型式:ND16FA-6
    • インピーダンス:6Ω
    • 再生周波数帯域:3,5kHz~27kHz
    • 効率:89dB(1W/m)
    • 入力:10W
    • FS:2.283Hz
    • Qms:2.42
    • Qes:3.10
    • Qts:1.36
    • 開口径:32.5mm
    • 重量:30g
  • 価格:2,368円(ペア)
  • 使用ネットワーク
    • 6dB/Oct
    • フィルムコンデンサ:(BENNIC)XPP-2.2μF
        → パラで2つ繋いで、4.4μFに変更しました。6KHzクロスくらい。

 カーオーディオ用ので良くある「刺さる」ツイーターの音は大嫌いなので、家庭用のを選択。 ソフトドームで安いやつ、というとこれにトドメを射す。

 配線は、ドアの純正スピーカーからドアミラー内側のインナーセイルガーニッシュまで配線は来ているようなので、そこのコネクタに太めの単線にスピーカー線をはんだ付けした線を差し込んで、ビニテで固定。
 コンデンサなんかも適当に繋いでビニテぐるぐる。 そしてガーニッシュを戻して、ツイーターは両面テープで仮付け。。普通の両面テープだからたぶん落ちるでしょう、そのうち強力両面テープに交換します。

 すばらしくテキトーなインストールですね。(汗) 音のほうは、まあ高域だけでなくボーカルも上に上がってきて無いよりはマシですが、、 何しろ純正ナビの音が悪いし、おそらく純正スピーカーもペラペラですので満足などできないです。
  → コンデンサを4.4μFに変更したところ、そこそこ聴けるレベルになりました。

 KENWOODの彩速ナビをインストールしたE12ノートは純正スピーカーのままでも結構音がよかったので、きっとナビの音質が悪いんですね。。 でもさすがに変えるのは勿体無い。 家庭用で自作スピーカーを作っているので、どうしてもその音に耳が慣れていて、カーオーディオで満足ゆく音を得ようと思うととてつもなくお金がかかりそうだから、しばらくはこれで我慢します。


DAYTON AUDIO (USA) ND16FA-6...

(BENNIC)XPP-2.2 x...
続きを読む | 閲覧(20037) 
12月
23 (月)
カテゴリー  マイカー
タグ  日産ラフェスタ SKYACTIV

 2013年MC後の中古車「LAFESTA Highway STAR 2.0G FF」を契約しました。

  • 仕様
    • ボディー色:アルミニウムシルバー
    • 左側オートスライドドア、キーレスエントリー
    • ディーラーオプションナビ(MC-312D-A)
  • 納車前追加DOP
    • プラスチックバイザー
    • ビルトインETC
    • メンテプロパック18
  • 型式:DBA-CWFFWN
  • 次回車検:平成28年3月
  • 走行距離:2,124Km
  • 購入価格:1,930,000円(税金・諸費用・諸経費・名義変更・陸送込)、下取り車無、 ETCセットアップ別

 この1年、大物の仕事を処理するためにほとんど休みなしで突っ走ってきたので、愛車のB30 LAFESTA 20S が来年1月下旬に9年目の車検を迎えることはわかっていても、どうにも動けずにいたのですが、ある程度仕事が落ち着いてきたので検討を始めてみました。

 当初、新型X-TRAILに3列シート車が加わったので期待したが、3列目の足元は緊急用途以外の何物でもない狭さなので早々に検討から外した。

 次に、今までノーマークだったマツダからのOEM車 (日産)「LAFESTA Highway STAR」がすこぶる評判が良いようです。灯台もと暗し! ・・例をあげれば、価格コムの自動車満足度ランキングでは、本日時点で全車種中、

    • 総合:1位
    • 走行性能:1位(これはちょっと上げすぎかと)
    • 乗り心地:3位

などとなっておりました。(但し最近1年間の投票実績にて)

  • と思っていたら、2年乗った人が今更の低評価レビューでランキングガタ落ち。セダンと比べりゃ走行性能も乗り心地も悪いのは当然だし、重量のあるミニバンでそこそこの燃費出しているのに燃費評価1はひどいなあ。デタラメなのはおそらく高速で飛ばしすぎるこの人の運転。ミニバンの特性を全く理解しない、車にこだわりの無い人に必要以上に低評価をされた車がかわいそう。 :-( 面白味の無いトヨタのセダンでも乗ってればよかったのにね。

 OEM元の「プレマシー」の試乗レポートも数々読みましたが、走行性能・特にハンドリングに関してべた褒めの記事が多く、大変気になる存在に。。足回りの詳細は以下の記事を読んでみると、なかなか説得力があります。

 また、今年1月にマイナーチェンジを受け、パワートレインが

    • エンジンが直噴ミラーサイクルのSKYACTIV-G
    • ミッションが6速ATのSKYACTIV-DRIVE

 に(FFの主要グレードは)変わっており、JC08モード燃費も1.5Tonの車重+2Lエンジンにもかかわらず14.0Km/Lから16.2Km/Lへと2割近い改善がなされています。
 もちろんOEM先のLAFESTA Highway STARも、SKYACTIVという呼び名では無いものの中身は同じパワートレインを積んでいます。 変速レスポンスも良いようですし、一方で駐車場や渋滞中などの低速運転時には発進が穏やかになるようにセッティングされているなど、なにかと賢そうで期待できます。

 以上を踏まえて、続きは詳細経緯と内容です。

購入動機と要求事項

    • 6人乗るのは、月に1回程度あるか無いかの家族全員での外食の時のみ。定員フル乗車で長距離を走ることはまず無く、3列めに広いスペースは必要としないため、走りの面白くない箱型ミニバンは候補外で、ステーションワゴン型のロールーフミニバンから選択となる。
    • 仕事で荷物を載せて中距離・長距離の出張があるので、高速の安定性・静粛性が高くトルク感のある車が向いている。そういう意味では、現車のLAFESTAも低速トルクの大きなエンジン+CVTで運転は楽だがロードノイズが騒々しい。これがどの程度改善されるのかは、実際に高速道路を走ってみないとわからない。
    • 昨年9月にE12ノートを購入し、日頃の省燃費性能とイザという時のスーパーチャージャーによる鋭い加速で活躍の機会が広がり、実質ファーストカーとなっていた。
    • それに伴いLAFESTAはセカンドカー扱いに降格していたのだけれど、1月の車検を通すかどうか迷いどころ。 下回りからギシギシ音が出だしたし、突っ張るサスと不整路でのバタツキにも飽きたので、良い車があれば買い替えたかった。
    • あらゆる場面でノートの出番が多く、LAFESTA後継車の予想年間走行距離は、8,000Km程度と少ない。 昨年ノート購入の際に実現できなかったハイブリッドカーも候補に挙げて検討し、予算が許せばぜひ乗ってみたいが、走行距離が少ないので燃費だけでのメリットではコストメリットは全く無い。
    • 4年後に二男くんが高校を卒業すると、同居家族は妻と両親の4人だけとなる。 今回、買い替えを見送るという選択もあるが、その場合は2年後に乗り換え候補とする車選びが非常に難しい。 今からであれば4年間は乗れる(6人乗る準備を常に必要とする)ことになるが、3列シート車に乗るのは多分これが最後であり、自分の乗りたい車を購入したい。

候補車

    • (日産)LAFESTA Highway STAR
    • (マツダ)PREMACY
    • (日産)X-TRAIL(3列シート)
    • (トヨタ)PRIUS ALPHA(7人乗り)
    • (トヨタ)WISH

評価結果

LAESTA Highway STAR 2.0G 2WD

    • エクステリア:△+
       フロントはOEM元のプレマシーに比べて日産顔ともいえるメッキグリルに換装され、万人受けしそうだし自分もこれは好み。サイドも無難にまとめているのだが、残念ながらリヤのセンスの良くないコンビランプ形状はどうにもできずにそのまま。横一線のメッキガーニッシュで多少緩和してはいるのだが、このお尻を毎日眺めるのは慣れるまでは我慢を強いられそうだ。
      アルミニウムシルバーは日産のシルバーよりも濃い目で、商用車臭さが出にくいので良さげ。
      t_0082df109d855a1b17a7d7f02c2257ce13.JPGt_01931c6360b9459f32ccaac8a411faaa9e.JPG

      メテオグレーもかなり濃い目なので、田舎の土埃環境では手入れが大変なので敬遠した
      t_03b4659c9fac09bb8b6547c7b5337f4cbb.JPG
    • インテリア:△
       まとまりが無いとはいえないが、プラスチッキーな各部の見た目と収納の無さは減点。前席のカップホルダーは使いづらそう。2列目のカラクリシートは良くできているのだが、我が家の用途では活用する機会があるかどうか少々微妙なところ。3列目の足元は現車LAFESTAと同程度。
    • 走行性能:◎
       各試乗レポートやクチコミの評判どおり、素晴らしいと思う。 コーナーでステアリングを切り込むほどにほんの少し前輪が沈み込み、吸いつくような感覚で突っ張り感無く実にスムーズに曲がってゆく。速いかどうかはともかく、気持ちの良い爽快なコーナリングだ。 ダイヤゴナルロールを煮詰めただけでなく、アクセル・ブレーキとのGの繋がりに拘ったというアピールは確かにわかるし、それが交差点の右左折時にも感じ取れるのが素晴らしいところ。
       エンジン・6ATも変速ショックが少なく、広いロックアップ領域による高いダイレクト感がトルク感を生んでいるし、エンジンブレーキの効きも良いので違和感が無い。
       OEM元ではSKYACTIV-G,SKYACTIV-DRIVEと呼ばれる最新のパワートレイン。但しアテンザやアクセラのような4-2-1排気をもつ圧縮比13のタイプではなく、圧縮比12でトルク・パワー・燃費全てに若干劣る。なお、2013年MC前はアイドリングストップ用の第二のバッテリーがあったが、1台にまとまった。
      t_020d07132183fbc5ddb965c53ea4efde0e.JPG
       今回燃費はそれほど気にしないのだが、CVTより単純に伝達効率の良いステップATがミラーサイクルエンジンと組み合わされ、田舎の定地走行では伸びるだろうとの予想。中~長距離出張でもそこそこの燃費が出てくれることは期待。でも加減速の頻繁な市街地ではCVTのほうが有利であって、ちょい乗りでは期待できない。
    • 乗り心地:◎
       リヤマルチリンクサスのおかげか、不整路でもバタつかない、突き上げ感が少ないまろやかな乗り心地。
    • 総得点が高く、外見よりも中身が重要なことから、これに決定した。但し値落ちの激しさがあるので新車は見積もりもネゴもしてみたが断念し、程度の良い中古が出てきているところなのでそれを狙っていった。
       千葉県北部や茨城県南部では安価な中古が少なく、タマ数の多い神奈川県で シルバーとグレーの現車を見たうえで、アルミニウムシルバーに決定した。

PREMACY 2.0S SKYACTIV

    • エクステリア:×
       フロントの笑い顔は、自分も含めて家族全員、受け入れ難い。 サイドの流れラインは見慣れないためか良さが分からない。 リヤもラフェスタHSと同様にセンスが良くない。
    • インテリア:△ LAFESTA Highway STARに同じ
    • 走行性能:◎ LAFESTA Highway STARに同じ
    • 乗り心地:◎ LAFESTA Highway STARに同じ

X-TRAIL(3列シート車)

    • エクステリア:△
       デザインは良いのだが、SUVとはいえ全幅1,820mmは大きすぎ。
    • インテリア:×
       自分的にデザインは好み。 しかし、3列目の足元は緊急用と割り切れる人でないと無理だと思うほど狭い。完全に体育館座りを余儀なくされる。 もしも月に1度、年に1度しか3列乗車の可能性が無いとしても、それが想定されるのであれば明らかに役不足。
    • 走行性能・乗り心地:試乗せず未評価

PRIUS ALPHA(7人乗り)

    • エクステリア:◎
       サイドとリヤスタイルが特に良く、商用車っぽさが無い。全幅1,775mmはやや大きすぎると感じる。
    • インテリア:△
       プリウス以下のトヨタのハイブリッド車に共通するが、先進のパワートレインを持ちながら先進性の感じられないインパネと内装には毎度がっかりする。
       3列目の足元は現状LAFESTAと同程度でちょっと狭めか。
    • 走行性能:△
       走り出しが遅すぎる。 右折時に踏み込んでも加速しないのは危険とも思える。発進のたびにパワーモードに切り替える不便さは耐えられそうにないし、燃費以外に運転そのものの楽しさを感じることができそうにない。
    • 乗り心地:○
       総じて穏やか。 高価な車なのにリヤサスがトーションバーなのにはがっかりだが、整地を走行している限りにおいては乗り心地は悪くない。(当然か)
    • オプションを付けないと助手席とリヤハッチのスマートエントリーができないなど、価格はアップするばかり。 値落ちの少なさを考えても、LAFESTA Highway Star(中古)より100万円も余分に払ってまで欲しいとは思えなかったし、何より走りにワクワク感が無かったのが残念で仕方が無い。燃費優先に躾けられたハイブリッド車は自分には合わないのだと悟った。

WISH 1.8S

    • エクステリア:○
       若すぎるかもしれないが、自分的にはシャープな外観は好みだが家内からは不評。
    • インテリア:○
       ソツ無くまとまっているが、どちらかといえば若向きかと思える内装。 運転席のエアコン吹き出し口の位置が圧迫感がある。
       3列目足元の空間は、今回一番まともだった。
    • 走行性能:○-
       悪くは無いが、1.8L+CVTでは加速時にエンジン回転数の上昇が大きく、爽快感に欠ける。 これなら現状LAFESTAの2L+CVTのトルク感溢れる加速のほうがずっと良い。
    • 乗り心地:○
       トヨタらしい乗り心地だが、試乗車は17インチ+扁平タイヤだったので少々ゴツゴツした印象。
    • 総じてこれなら買い替えなくても良いなと思ってしまう。

総括

 以上により、神奈川県の日産系中古車販売店に出向いて現車確認後、LAFESTA Highway STAR 2.0G FF(アルミニウムシルバー)を契約。 年明けの1月中旬に納車予定。
 納車されたら、SKYACTIV-DRIVE 6速ATのマニュアル操作でエンジンを回して、ワインディングロードを気持ち良く走りたい。 :-D

続きを読む | 閲覧(21754) 
755件のうち701 - 710件目を表示しています。