Ganponブログ

趣味の模型作り、ドライブ、旅行など
since Mar.2017

RC可動 M2A2ブラッドレー 回路&プログラム(番外)

2023-04-26 23:55:45 | 1/35 M2A2ブラッドレー

2023-04-27
備忘録として、完成したM2A2ブラッドレーの回路図とプログラムを残します。
尚、ESP32-WROOM-32E-MINIとモータドライバDRV8835は秋月電子通商で購入しました。

▼回路図

画像をクリックすると拡大します

 
  1.   2023-04-18
  2.   効果音はDFPlayer Mini
  3.   モータドライバはDRX8835
  4.    【操作手順】
  5.     PSボタンでペアリング開始。白色インジケータランプ高速点滅。
  6.    戦車の電源投入。
  7.    インジケータランプ青色点灯でペアリング完了。

  8.    【走行コントロール】
  9.      コントローラーの左スティック上下で前後進、
  10.      右スティックの左右でステアリングを制御。
  11.      ステアリングを振っていくと回転軸側が減速していき(緩旋回から信地旋回)、
  12.      一杯に倒すと回転軸側は停止。(信地旋回)
  13.      左スティック中央で右ステアリングを一杯に振ると超信地旋回(速度50%)

  14.    【砲身上下】右十字キーの △と?ボタンで砲身上下。□ボタンでセンター。
  15.    【砲塔旋回】 左スティック左右で砲塔旋回。離した位置で止まる。
  16.    【リアゲート開閉」 左十字キーのUPとDOWNボタンでゲート閉、開。
  17.    【機関砲】 R1ボタンで主砲発射 40mm自動擲弾銃Mk.19
  18.    【機銃】 L1ボタンで射撃
  19.    【ヘッドライト】左十字キーのRIGHTボタンで点灯、LEFTボタンで消灯。
  20.    【ブレーキランプ】走行中以外に点灯。ヘッドライト点灯時はスモール兼用。

  21.    【疑似追尾モード】
  22.    R2ボタンで右超信地旋回 + 砲塔左旋回
  23.    L2ボタンで左超信地旋回 + 砲塔右旋回
  24. */

  25. #include <Arduino.h> // Arduino ヘッダインクルード
  26. #include "SoftwareSerial.h" // EspSoftwareSerial
  27. #include "DFRobotDFPlayerMini.h"

  28. //SoftwareSerial mySoftwareSerial(16, 17); // RX, TX EspSoftwareSerial
  29. HardwareSerial Serial_df(2); // use HardwareSerial UART2 (16pin=RX, 17pin=TX)

  30. DFRobotDFPlayerMini myDFPlayer;
  31. void printDetail(uint8_t type, int value);
  32. #include <Ps3Controller.h>
  33. #include <ESP32Servo.h>
  34. Servo servo1; // create four servo objects
  35. int servo1Pin = 27;
  36. Servo servo2;
  37. int servo2Pin = 14;
  38. Servo servo3;
  39. int servo3Pin = 12;

  40. int LED_1 = 23; //ブレーキランプ
  41. int LED_2 = 22; //ヘッドライト
  42. int LED_3 = 19; //砲撃
  43. int LED_4 = 18; //銃撃
  44. int k = 0;
  45. int s = 0;
  46. int d_time = 50;
  47. int angle_servo1 = 80; // 上下;
  48. int dtime = 10; //砲身上下スピード(遅延時間)
  49. int anglenow = angle_servo1 ;
  50. int angle_servo3 = 20 ; // リアゲート閉
  51. int anglenow3 = angle_servo3 ;
  52. int motor_speed;
  53. float steering;
  54. int pos_ly;
  55. int pos_lx;
  56. int pos_ry;
  57. int pos_rx;
  58. int AIN1 = 32; // A入力1/APHASE 左モータ AIN1
  59. int BIN1 = 25; // B入力1/BPHASE 右モータ BIN1
  60. int PWMApin = A5; // A入力2/AENABLE 左モータ AIN2 IO33
  61. int PWMBpin = A19; // B入力2/BENABLE 右モータ BIN2 IO26 (IO0は起動時不安定)
  62. int PWMA = 2; //PWMAチャンネル 0=NG 1=NG 0〜15
  63. int PWMB = 3; //PWMBチャンネル 0=NG 1=NG 0〜15 

  64. void setup() {
  65.   servo1.setPeriodHertz(50); // Standard 50hz servo PWMサイクル:20mS FS0307 120°
  66.   servo1.attach(servo1Pin, 900, 2100); // (servo1Pin, minUs, maxUs)
  67.   servo2.setPeriodHertz(50); // Standard 50hz servo PWMサイクル:20mS
  68.   servo2.attach(servo2Pin, 500, 2400); // (servo1Pin, minUs, maxUs)
  69.   servo3.setPeriodHertz(50); // Standard 50hz servo PWMサイクル:20mS FS0307 120°
  70.   servo3.attach(servo3Pin, 900, 2100); // (servo1Pin, minUs, maxUs)
  71.   //delay(50);

  72.   //mySoftwareSerial.begin(9600);
  73.   Serial_df.begin(9600); // RX2 = 16, TX2 = 17
  74.   Serial.begin(115200);

  75.   //Ps3.begin("00:11:22:33:44:55"); //SixaxisPairToolで調べたmac adresに修正
  76.   //Ps3.begin("0c:b8:15:f5:8a:a2"); // PS3-Eコントローラ ESP32-1
  77.   Ps3.begin("00:00:00:00:00:26"); // PS3-Eコントローラ ESP32-2
  78.   Serial.println("PS3 Ready");

  79.   if (!myDFPlayer.begin(Serial_df)) { //Use HardwareSerial to communicate with mp3.
  80.     Serial.println(F("Unable to begin:"));
  81.     Serial.println(F("1.Please recheck the connection!"));
  82.     Serial.println(F("2.Please insert the SD card!"));
  83.     while (true) {
  84.       delay(0); // Code to compatible with ESP8266 watch dog.
  85.     }
  86.   }

  87.   Serial.println(F("DFPlayer Mini online."));
  88.   myDFPlayer.volume(20); //Set volume value. From 0 to 30

  89.   ledcSetup(PWMA, 5000, 8); //チャンネル,周波数,解像度(8bit=256段階)
  90.   ledcAttachPin(PWMApin, PWMA); //ledPinをPWMCHチャンネルに接続
  91.   ledcSetup(PWMB, 5000, 8); //チャンネル,周波数,解像度(8bit=256段階)
  92.   ledcAttachPin(PWMBpin, PWMB); //ledPinをPWMCHチャンネルに接続
  93.   pinMode(AIN1, OUTPUT);
  94.   pinMode(BIN1, OUTPUT);
  95.   pinMode(LED_1, OUTPUT);
  96.   pinMode(LED_2, OUTPUT);
  97.   pinMode(LED_3, OUTPUT);
  98.   pinMode(LED_4, OUTPUT);

  99.   LEDtenmetsu(LED_2);

  100.   servo1.write(angle_servo1); // 0 - 180
  101.   delay(100);
  102.   servo2.write(90); // 0 - 180
  103.   delay(100);
  104.   servo3.write(angle_servo3); // 0 - 180
  105.   delay(200);
  106.   servo3.detach();

  107.   myDFPlayer.play(28); //エンジン始動
  108.   delay(2000);
  109. }

  110. void loop() {
  111.   if (Ps3.isConnected()) {
  112.     pos_lx = Ps3.data.analog.stick.lx;
  113.     pos_lx = pos_lx + 128;
  114.     pos_ly = Ps3.data.analog.stick.ly;
  115.     pos_ly = pos_ly + 128;
  116.     pos_rx = Ps3.data.analog.stick.rx;
  117.     pos_rx = pos_rx + 128;

  118.     //砲塔旋回 && pos_ly > 102 && pos_ly
  119.     if ( pos_lx > 230 && pos_ly > 102 && pos_ly
  120.       servo2.write(105);
  121.     } else if (pos_lx < 25 && pos_ly > 102 && pos_ly
  122.       servo2.write(75);
  123.     } else { //停止
  124.       servo2.write(90);
  125.     }

  126.     //砲身上下
  127.     if ( Ps3.event.button_down.square) { // center
  128.       if (anglenow > angle_servo1) {
  129.         for (anglenow = anglenow; anglenow >= angle_servo1; anglenow -= 1) {
  130.           servo1.write(anglenow);
  131.           delay(dtime);
  132.         }
  133.       }
  134.       else {
  135.         for (anglenow = anglenow; anglenow <= angle_servo1; anglenow += 1) {
  136.           servo1.write(anglenow);
  137.           delay(dtime);
  138.         }
  139.       }
  140.     }

  141.     if ( Ps3.event.button_down.triangle) { // up
  142.       for (anglenow = anglenow; anglenow >= (angle_servo1 - 45); anglenow -= 1 ) {
  143.         servo1.write(anglenow);
  144.         delay(dtime);
  145.       }
  146.     }

  147.     if ( Ps3.event.button_down.cross) { // down
  148.       for (anglenow = anglenow; anglenow < (angle_servo1 + 35); anglenow += 1 ) {
  149.         servo1.write(anglenow);
  150.         delay(dtime);
  151.       }
  152.     }

  153.     // リアゲート開閉
  154.     if ( Ps3.event.button_down.up) { // ゲートup=閉
  155.       servo3.attach(servo3Pin);
  156.       for (anglenow3 = anglenow3; anglenow3 >= angle_servo3; anglenow3 -= 1 ) {
  157.         servo3.write(anglenow3);
  158.         delay(20);
  159.       }
  160.       delay(50);
  161.       servo3.detach();
  162.     }

  163.     if ( Ps3.event.button_down.down) { // ゲートdown=開
  164.       servo3.attach(servo3Pin);
  165.       for (anglenow3 = anglenow3; anglenow3 < (angle_servo3 + 110); anglenow3 += 1 ) {
  166.         servo3.write(anglenow3);
  167.         delay(20);
  168.       }
  169.       delay(50);
  170.       servo3.detach();
  171.     }

  172.     if (Ps3.event.button_down.circle) {
  173.       if (s == 0) {
  174.         s = 1;
  175.         myDFPlayer.play(28); //エンジン始動
  176.         delay(5000); // delay(8000);
  177.         myDFPlayer.loop(23); //Loop 5th mp3 アイドリング
  178.         delay(d_time);
  179.       } else {
  180.         myDFPlayer.disableLoop(); //アイドリング停止
  181.         s = 0;
  182.         //delay(100);
  183.       }
  184.     }

  185.     if (Ps3.event.button_down.r3) {
  186.       myDFPlayer.disableLoop(); //アイドリング停止
  187.       s = 0;
  188.     }

  189.     if (Ps3.event.button_down.right) {
  190.       digitalWrite(LED_2, HIGH); // Headlight ON
  191.     }

  192.     if (Ps3.event.button_down.left) {
  193.       digitalWrite(LED_2, LOW); // Headlight off
  194.     }

  195.     if (Ps3.data.button.r2) { //右超信地旋回疑似砲塔追尾デモ
  196.       servo2.write(75); //砲塔左旋回
  197.       motor_speed = 255;
  198.       motor_run(motor_speed, 0, motor_speed, 1, 0);
  199.       delay(500);

  200.     }

  201.     if (Ps3.data.button.l2) { //左超信地旋回疑似砲塔追尾デモ
  202.       servo2.write(105); //砲塔右旋回
  203.       motor_speed = 255;
  204.       motor_run(motor_speed, 1, motor_speed, 0, 0);
  205.       delay(500);
  206.     }

  207.     if (Ps3.event.button_down.r1) { //機関砲
  208.       myDFPlayer.play(31);
  209.       for ( int i = 0; i < 3 ; i++) {</li>
  210.         digitalWrite(LED_3, HIGH); //発光
  211.         delay(80);
  212.         digitalWrite(LED_3, LOW);
  213.         delay(220);
  214.       }
  215.       if (s == 1) {
  216.         myDFPlayer.loop(23); //Loop 5th mp3 アイドリング
  217.         delay(d_time);
  218.       }
  219.     }

  220.     if (Ps3.event.button_down.l1) { //機銃
  221.       myDFPlayer.play(30);
  222.       delay(100);
  223.       for ( k = 0; k < 9; k++) {
  224.         digitalWrite(LED_4, HIGH); //発光
  225.         delay(40);
  226.         digitalWrite(LED_4, LOW);
  227.         delay(60);
  228.       }
  229.       if (s == 1) {
  230.         myDFPlayer.loop(23); //Loop 5th mp3 アイドリング
  231.         delay(d_time);
  232.       }
  233.     }

  234.     //走行コントロール
  235.     /* pos_ly = Ps3.data.analog.stick.ly;
  236.        pos_rx = Ps3.data.analog.stick.rx;
  237.        pos_ly = pos_ly + 128;
  238.        pos_rx = pos_rx + 128;
  239.     */

  240.     /* //左スティックがセンター付近は停止(ブレーキ)
  241.         if (pos_rx > 102 && pos_rx < 152 && pos_ly > 102 && pos_ly
  242.           motor_run(0, 0, 0, 0, 1);
  243.         }
  244.     */

  245.     //前進
  246.     if (pos_ly <= 102 && pos_rx >= 102 && pos_rx <= 152) {
  247.       motor_speed = map(pos_ly, 102, 0, 0, 255);
  248.       motor_run(motor_speed, 0, motor_speed, 0, 0);
  249.     }

  250.     //後進
  251.     else if ( pos_ly >= 152 && pos_rx >= 102 && pos_rx <= 152) {
  252.       motor_speed = map(pos_ly, 152, 255, 0, 255) ;
  253.       motor_run(motor_speed, 1, motor_speed, 1, 0);
  254.     }

  255.     //前進右緩旋回、信地旋回
  256.     //else if ( pos_ly <= 102 && pos_rx > 152 && pos_rx <= 245) {
  257.     else if ( pos_ly <= 102 && pos_rx >= 152) {
  258.       motor_speed = map(pos_ly, 102, 0, 0, 255);
  259.       steering = motor_speed * (1.00 - (map(pos_rx, 152, 255, 0, 255) / 255.00));
  260.       motor_run(motor_speed, 0, steering, 0, 0);
  261.     }

  262.     //前進左緩旋回、信地旋回
  263.     //else if ( pos_ly <= 102 && pos_rx < 102 && pos_rx >= 10) {
  264.     else if ( pos_ly <= 102 && pos_rx <= 102) {
  265.       motor_speed = map(pos_ly, 102, 0, 0, 255);
  266.       steering = motor_speed * (1.00 - (map(pos_rx, 102, 0, 0, 255) / 255.00));
  267.       motor_run(steering, 0, motor_speed, 0, 0);
  268.     }

  269.     //後進右緩旋回、信地旋回
  270.     //else if ( pos_ly >= 152 && pos_rx > 152 && pos_rx <= 245) {
  271.     else if ( pos_ly >= 152 && pos_rx >= 152 ) {
  272.       motor_speed = map(pos_ly, 152, 255, 0, 255);
  273.       steering = motor_speed * (1.00 - (map(pos_rx, 152, 255, 0, 255) / 255.00));
  274.       motor_run(motor_speed, 1, steering, 1, 0);
  275.     }

  276.     //後進左緩旋回、信地旋回
  277.     //else if ( pos_ly >= 152 && pos_rx < 102 && pos_rx >= 10) {
  278.     else if ( pos_ly >= 152 && pos_rx <= 102 ) {
  279.       motor_speed = map(pos_ly, 152, 255, 0, 255);
  280.       steering = motor_speed * (1.00 - (map(pos_rx, 102, 0, 0, 255) / 255.00));
  281.       motor_run(steering, 1, motor_speed, 1, 0);
  282.     }

  283.     //右超信地旋回
  284.     else if (pos_rx >= 245 && pos_ly >= 102 && pos_ly <= 152) {
  285.       motor_speed = 204;
  286.       motor_run(motor_speed, 0, motor_speed, 1, 0);
  287.     }

  288.     //左超信地旋回
  289.     else if (pos_rx <= 10 && pos_ly >= 102 && pos_ly <= 152) {
  290.       motor_speed = 204;
  291.       motor_run(motor_speed, 1, motor_speed, 0, 0);
  292.     }

  293.     else { //停止(ブレーキ)
  294.       motor_run(0, 0, 0, 0, 1);
  295.     }
  296.   }
  297. }


  298. void motor_run(int D0, int D1, int D2, int D3, int D4) {
  299.   //D0 : モータスピード(左)
  300.   //D1 : モータA(左)1 = HIGH / 0 = LOW
  301.   //D2 : モータスピード(右)
  302.   //D3 : モータB(右)1 = HIGH / 0 = LOW
  303.   //D4 : LED_3 ON/OFF 1 = HIGH / 0 = LOW

  304.   //analogWrite(PWMA, D0);
  305.   ledcWrite(PWMA, D0); //(チャンネル,解像度)
  306.   digitalWrite(AIN1, D1);
  307.   //analogWrite(PWMB, D2);
  308.   ledcWrite(PWMB, D2); //(チャンネル,解像度)
  309.   digitalWrite(BIN1, D3);
  310.   digitalWrite(LED_1, D4);
  311. }

  312. void LEDtenmetsu(int LED) {
  313.   for (int i = 0; i
  314.     digitalWrite(LED, HIGH);
  315.     delay(500);
  316.     digitalWrite(LED, LOW);
  317.     delay(500);
  318.   }
  319. }

1/35 タミヤ M2A2 ODSブラッドレー(その11・完成)

2023-04-20 12:55:10 | 1/35 M2A2ブラッドレー

2023-04-20
少し部分修正をして完成としました。

▼完成画像の前に、話題のChatGPTによるM2ブラッドレー、M2A2ブラッドレーに関しての説明です。

【M2ブラッドレー】
M2ブラッドレーは、アメリカ合衆国の軍用車両で、主に歩兵を運搬するための装甲車です。1981年に開発され、現在もアメリカ軍で運用されています。

M2ブラッドレーは、主砲として25mm機関砲を搭載しており、車体上部には機関銃が装備されています。また、車体側面には追加の装甲が取り付けられており、対戦車兵器や地雷などからの攻撃にも耐えることができます。

M2ブラッドレーは、歩兵を運搬するだけでなく、戦闘車両としての役割も持っています。
そのため、遠隔操作式の機関砲や対戦車ミサイルなどの武装を搭載することができます。

M2ブラッドレーは、アメリカ軍の他にも、サウジアラビアやイラクなどの国々でも運用されています。

【M2A2ブラッドレー】
M2A2ブラッドレーは、アメリカ合衆国で開発された歩兵戦闘車(IFV)で、主に歩兵の支援、輸送、火力支援を行うために使用されます。
M2A2は、M2ブラッドレーの改良型で、1980年代後半に開発されました。

M2A2ブラッドレーは、重装甲と強力な火力を備えており、機関銃、自動擲弾銃、TOW対戦車ミサイル、40mmグレネードランチャーなど、多数の武装を搭載しています。
また、高度な通信システムや先進的なセンサーなどの電子戦装備も搭載しています。

M2A2ブラッドレーは、アメリカ陸軍をはじめとする多数の国々で運用されており、現代の戦場で重要な役割を果たしています。

 

▼それでは、完成画像です。

画像をクリックすると拡大します

画像をクリックすると拡大します

画像をクリックすると拡大します

 

▼そして、完成記念動画です。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その10)

2023-04-18 14:06:29 | 1/35 M2A2ブラッドレー

2023-04-18
走行改善の続きです。

▼起動輪が履帯にしっかり噛んでいないので、空回りすることが有りました。
センターガイドが起動輪に当たっているので、これ以上しっかり噛む事が出来ませんでした。

▼起動輪の中央部分を削り、もう少し深く噛めるようにしました。

▼履帯を一枚減らしてテンションをもっとかけられる様にします。

▼以上の改善で走行時にギクシャクした動きになっていたのを改善できました。

走行動作の改善ができたので、ウェザリングを開始します。

▼ボルト締め部に土汚れを付けます。
ローアンバーとイエローオーカーの混色をボルト周りに塗ります。

▼ターペンタインで溶かしながら余分なと用を拭き取ります。

▼車体表面の土汚れをイエローオーカーとチタニウムホワイトを点付けした後、
ターペンタインで溶かしながら全体に馴染ませます。

▼履帯の土(泥)汚れはWP02マッドホワイトを塗り付けます。
裏面側の転輪で擦れる部分は乾く前に綿棒で拭きとります。

▼走行時に剥げ落ちない様にトップコートします。

もう少し手を入れる所が有りますが、完成が見えてきました。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その9)

2023-04-15 23:09:09 | 1/35 M2A2ブラッドレー

2023-04-15
▼デカールを貼ります。
最初、戦闘識別パネルの斜め3本線は塗装にしようと試みましたが、
マスキングが上手く出来ずデカールにしました。

▼車体下部に泥汚れを施します。
WC04 Mr.ウェザリングカラー サンディウォッシュと、WP02 Mr.ウェザリングペースト マッドホワイトを塗りたくりました。

▼走行確認で起動輪で履帯が横ずれして外れそうになったり、空回りが発生しています。
先ず、起動輪に手を加えます。

▼起動輪の歯が履帯をかき易くするため谷を削りました。
そして、起動輪にセンターガイド受けを増設して履帯の横ずれを防止します。

▼履帯のテンションを調整できるように改造していますが、誘導輪の車軸板が反るので1mmのSUS線で補強しました。

この履帯はパッドが滑るので上手く旋回できません。
ゴム履帯ならグリップ力はアップしますが、トルクが足りません。
金属履帯は入手困難です。
出来る範囲で仕上げようと思います。

という事で、気持ちを切り替えて、次はウェザリンをすることにします。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その8)

2023-04-12 00:07:38 | 1/35 M2A2ブラッドレー

2023-04-11
▼サイドスカートは車体に接着するとメンテがやり難くなるので、マグネットで脱着できる様にします。

▼アリスパックなどの装備品を取付けます。

▼砲塔後部のラックにも装備品を搭載します。

▼こんな所に隙間が、、、気になります。

今日はこの辺で時間切れとなりました。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その7)

2023-04-10 23:25:47 | 1/35 M2A2ブラッドレー

2023-04-10
▼NATOブラウンが届いたので、フィギュアの塗装を済ませました。

車体はB&W塗装をします。

▼先ず、C33艶消し黒でシャドウ吹きをします。

続いて、
①濃いグレー(C13+C33)
②C13ニュートラルグレー
③明るいグレー(C13+C62艶消し白)
④C62の順で塗装します。

シャドー吹きのC33と、①濃いグレーの差が出ず、途中で割愛し②に進めます。

▼LP30ライトサンドを通常より薄めに希釈して吹きます。

▼車輪を装着して、フィギュアを乗せ、全体を確認します。

塗りが薄い所も有りますが、今日はここまでで打ち止めとしました。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その6)

2023-04-09 17:50:12 | 1/35 M2A2ブラッドレー

2023-04-08
▼フィギュアの塗装前にちょっとだけディテールアップ。
板おもりでゴーグルのバンドを作ります。

▼白サフを吹き、お顔を色付けします。

▼迷彩柄のNATOブラウンの手配中ですが、その他を塗りました。

▼ネット画像で有刺鉄線(多分?)をフロントに取り付けていたので、

▼諸先輩が網戸を利用していたのを真似てみました。

▼車体の塗装前にグレーサフを吹きます。

▼車内色C26ダッグエッググリーンを塗っておきます。

▼パーツ【F6】が根元から折れて、どこかにいってしまいました。

▼外径1.5mmのスプリングと1Φ真鍮パイプ、0.5mm真鍮線で代品を作りました。

▼ついでに、2個のアンテナも同様に置き換えてみました。

あまり進んでいませんが、今日はここまでで終了としました。

 

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その5)

2023-04-07 00:43:31 | 1/35 M2A2ブラッドレー

2023-04-06
▼アリスパックなどを塗装します。
グレーサフを吹いてから、
アリスパックはXF62オリーブドラブ、
スリーピングバッグ、ダッフルバッグ、シート、テントはXF63ジャーマングレイ、
スリーピングマットはXF20ミディアムグレイを塗ります。

▼パネルラインでウォッシングをします。

▼ここで転輪を塗装しておきます。
先ずブラックサフを吹きます。

▼XF85ラバーブラックを吹いてから、手製の14ΦマスキングプレートでホイルにLP30ライトサンドを塗ります。
上部転輪はライトサンドを塗ってから、ラバーブラックを筆塗りしました。

▼転輪を車体に組付け、AFVクラブの可動履帯を装着しました。
AAV7A1に履かせてみたときは片側82枚としていましたが、M2ブラッドレーでは1枚減らして81枚。
更にテンションを調整するために誘導輪を前後に移動調整できるようにしました。

▼モーターを回して履帯を動かせると、バックの時に緩んだ履帯が矢印の部分に担ぐことが有ります。

▼リューターで出っ張りを削り落とします。
ついでにマッドガードを薄く見える様に削りました。

今回はアリスパックなどの加工、塗装に結構時間がかかりました。

 

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その4)

2023-04-05 13:14:19 | 1/35 M2A2ブラッドレー

2023-04-05
当初はスペースの都合で諦めていたリアゲートの電動開閉に挑戦しました。

▼何とか場所と、機構を考えて実施します。
実車の画像を参考にゲート開閉させるロッドとリンクをプラ板で作りました。

▼リアゲート開閉のサーボを組付けたので、仮に使っていた制御回路基板は小さくしないと搭載できません。

▼ESP32で新規に制御基板を作りました。
しかも、今まで使っていたものより若干小さいAE-ESP32-WROOM-32E-MINI(購入先:秋月電子通商)を使いました。
ギリギリですが平面配置で収まりました。

しかし、書込みが出来ません!

【エラー表示】
esptool.py v3.0-dev
Serial port COM3
Connecting........_____....._____....._____....._____....._____....._____....._____

A fatal error occurred: Failed to connect to ESP32: Invalid head of packet (0x65)

どうも、このユニットは書き込み時にBOOTボタンを押したまま、ENボタンを1回押さないと失敗するようです。
秋月さん、書いとってよ~。
ネットの諸先輩の情報でやっと描き込み出来ました。

▼配線を整えます。

▼スピーカーはボデー上部側に取り付ける予定です。

▼ヘッドライトにウォームホワイトのチップLEDを取付けます。
LEDの固定とレンズはUVレジンです。

▼ボデーに取り付け点灯テスト。
ウインカーの点灯は見送りました。

▼バックライトは赤色チップLEDを組込みました。
ヘッドライト点灯時にはスモールライト兼用の回路にしています。

▼フィギュアの下部は砲塔に組み込んだパーツと干渉しない様に切断し、マグネットで着脱できるようにします。

次はザックなどのOVMですが、今日はここまでです。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その3)

2023-04-03 21:43:28 | 1/35 M2A2ブラッドレー

2023-04-03
▼砲塔上部を組み立てます。

▼このパーツですが、チョン付けでは後に外れてしまうのが必至です。
そこで、真鍮線を差して固定します。

▼スモークディスチャージャーです。
最近、細かなパーツの組立に手古摺る様になってきました。
アップにするとゲート後の処理残りが。。。。。

▼赤矢印の所ですが、塞ぐものが無いのです。
作例を見てもここの事に関しての情報は有りません。
上下結合固定用のマグネットをセットしたので、この部分は塞ぐことにします。

▼バスケットは穴を開けます。

▼砲塔上下は接着しないので、隙間をプラシートなどで塞ぎます。

▼赤矢印の二つのアームですが、ヒンジを可動にしないと砲塔の上下が出来ません。

▼真鍮パイプと真鍮線を加工してヒンジアームを作りました。
照準プレートは作業中に紛失し、余りの透明部品から切り出しました。

▼マズルブレーキも真鍮パイプを加工して、交換しました。

▼リアゲートのドアですが、開または閉のどちらかを選択するのですが、、、、

▼ヒンジを真鍮パイプと真鍮線に替えて可動化します。
ドアレバーも可動するので、手動で開閉できるようになりました。

このリアゲートは開閉できますが、果たして電動化は‥‥?!
今日はここまでです。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その2)

2023-03-30 13:18:10 | 1/35 M2A2ブラッドレー

2023-03-30
▼このキットの残念なところは、転輪アームが一体になっている事です。
サスペンションを可動させるために切り離します。

▼時間のかかる作業ですが、焦らず続けて全てを切り離しました。

▼アーム以外を元に戻します。

▼2mmプラ棒を差し、0.6mmドリルで穴を貫通させます。

▼2mm丸棒の受けを車体に設けます。

▼ピアノ線を挿入して車体に組み込みます。
ピアノ線は第1、6転輪用が0.5mm、第2~5転輪用は0.4mmを使います。

▼ピアノ線を組付けたので、ギヤボックスは嵩上げして取り付け直します。

▼起動輪車軸のピニオンギヤを削って薄くし、ベアリングを内側に移動しました。

▼砲塔の改造に移ります。
先ず、主砲上下(仰俯角)させるサーボを組込みます。

砲塔の旋回はいつもの様なサーボに取り付けたセンタープーリーと、
砲塔ターレットリングに貼ったドライブベルトの回転構造はスペースの関係で難しいです。

▼そこで、手持ちの歯車を組み合わせて、空いたスペースを活用する事にします。

▼サーボを分解してモータと制御回路を取り出し、モーターにはウォームギヤ(タミヤのギヤボックス余り物)を装着します。

▼回転軸の中心を合わせるのが手間だったので、2mmネジをガイドにして回転動作を砲塔に伝えます。

▼砲塔の機関砲と機銃を光らせます。
M240機関銃の口径は7.62mm(1/35で0.2mm)です。
銃身に穴を通すのは難しいので、0.8mm同パイプに置き換え、0.25mm光ファイバーを通します。

▼主砲はM242ブッシュマスター25mm機関砲です。
これも穴を通すのは難しいです。
二つに割る方法も有りますが、真鍮パイプに置き換えます。
太さの異なるパイプを結合し、瞬着で段差を埋め、外周をヤスリで均して誤魔化しテーパーです。
0.5mm光ファイバーを通します。

砲身の上下可動には、この後厄介な事が待っていましたが、この時点では気が付いていません。

 


1/35 タミヤ M2A2 ODSブラッドレー 製作(その1)

2023-03-28 13:59:42 | 1/35 M2A2ブラッドレー

2023-03-28
AAVP7A1を製作後に組上げたAFV製可動履帯を履かせるため、M2A2 ODSブラッドレーを製作します。
M2ブラッドレーは米国がウクライナへの供与を決めています。

▼パーツはこんな具合です。

▼モータライズ用とみられる造形が有ります。

▼起動輪の車軸の位置から、既成のギヤボックスが利用できません。
その為、起動輪用にギヤを追加して対応します。
画像はそのギヤ用の切り欠きです。

▼Amazonで仕入れたギヤを使います。

▼私は40個入りでもう少し安価な時に手に入れました。

▼手作りのギヤボックスですが、ミニモーター標準ギヤボックス8速の構成ギヤとモーターを利用しています。
起動輪用の車軸は3mm6角シャフトを使います。
ギヤの穴を1.8mmまで広げ、ライターで熱した6角シャフトを挿入する事で6角穴を開けます。
車体側に3mmベアリングを取付けて回転し易くしています。

▼3mmベアリングが外に飛び出しすぎているので、ギヤ幅を削ってベアリングを内側へ移動する必要が有ります。

▼AAVP7A1の制御基板assyで動作確認しました。
平らな底板部分は同じような大きさですが、やはりサイズ的にはギリギリですね。