エンジン回転数の自動計算をするツール
フロントスプロケットとリアスプロケットを交換して、高速走行時のエンジン回転数を下げたいとか、スクランブラー仕様にしたからリアスプロケットの丁数増やしてトルクフルな操作感にしたいとかありますよね~
一応手計算でもおおよそのエンジン回転数はわかるのですが、計算が面倒なので自動計算ツールを作りました。下記はそのツールの画面抜粋です。
但し、ブログ主は、ほとんど知識ゼロです。
それでも作れました。ChatGPTに尋ねながら作成すると1時間ぐらいで作成でしました。ツールは別ページに掲載してます。
※2次減速比の早見表が見たい方はこちらです。
コードを作る過程の説明
まずはこんなことを聞いてみます。
質問
バイクのリアタイヤの回転数からエンジンの回転数を予測することは可能ですか?
ChatGPT
はい、バイクのリアタイヤの回転数からエンジンの回転数を予測することは可能です。ただし、そのためにはいくつかの要素を考慮する必要があります。以下の要素がエンジン回転数に影響を与えます。
フロントスプロケットの回転数:
フロントスプロケットの回転数は、エンジンの回転数に比例します。
2次減速比:
フロントスプロケットとリアスプロケットの歯数比率です。2次減速比が大きいほど、リアタイヤの回転数がエンジンの回転数に近づきます。
ギア比:
変速ギアの比率です。ギア比が大きいほど、リアタイヤの回転数がエンジンの回転数に近づきます。
1次減速比:
クラッチとプライマリーギアの比率です。1次減速比が大きいほど、エンジンの回転数が低下します。
これらの要素を考慮し、リアタイヤの回転数からエンジンの回転数を予測することができます。ただし、実際のバイクの特性や仕様によって異なる場合がありますので、予測値と実際の値は若干の差異が生じる可能性があります。
質問
リアタイヤの速度の入力、リアタイヤの直径の入力、リアタイヤの外周計算、リアタイヤのrpm計算、リアスプロケットの丁数入力、フロントスプロケットの丁数入力、2次減速比の考え方とその計算方法を教えてください。
考え方を書いて、その後計算方法を示す方法でお願いします。
なお、計算は一項目ずつステップを踏んでいけばよく、最後に式をまとめて一つの式にしてください。
まずはギア比は1で計算すればよいです。
srv250の1次減速比0.313です。
ChatGPT
まずは、リアタイヤの速度と直径からリアタイヤの外周を計算します。
リアタイヤの外周 (tireCircumference) の計算式は以下の通りです:
tireCircumference = π * リアタイヤの直径 / 1000
ここで、πは円周率を表します。
次に、リアタイヤの回転数を求めます。
リアタイヤの回転数 (tireRPM) の計算式は以下の通りです:
tireRPM = (リアタイヤの速度 * 1000 / 60) / リアタイヤの外周
リアタイヤの速度は km/h 単位で入力されるため、m/s に変換するために 1000
をかけ、さらに 1 分間あたりの回転数を求めるために 60 で割ります。
次に、リアスプロケットとフロントスプロケットの丁数を入力し、2次減速比を計算します。
2次減速比 (secondaryReductionRatio) の計算式は以下の通りです:
secondaryReductionRatio = リアスプロケットの丁数 /
フロントスプロケットの丁数
最後に、エンジン回転数を求めます。
エンジン回転数 (engineRPM) の計算式は以下の通りです:
engineRPM = リアタイヤの回転数 * 2次減速比
以上が各ステップの考え方です。最後にギア比を適用する場合は、エンジン回転数にギア比を乗じます。
計算式をまとめると、エンジン回転数 (engineRPM) の計算式は以下の通りです:
engineRPM = (リアタイヤの速度 * 1000 / 60) / (π * リアタイヤの直径 / 1000) *
(リアスプロケットの丁数 / フロントスプロケットの丁数)
なお、SRV250の1次減速比は0.313ということですので、この値を計算式に適用してください。
以上が計算方法の概要と式です。
ブログ主が心の底から驚いたこと(大げさかな?)
ちゃんと理解しやすいようにGPTが丁寧に説明してくれました。驚きですね!
知的好奇心旺盛な人なら年取ってからでも独学とかできますね!
調子にのってドンドンと質問しちゃいましょう!
次にコード生成もやってもらいますよ。お願いした文章とその答えを紹介します。
質問
入力部と計算部、入力した結果と計算結果をブラウザ画面に表示する方法を教えてください。
ChatGPT
以下のコードは、ブラウザ画面に入力フォームと計算結果を表示する方法です。入力した値を取得し、計算結果をブラウザ上に表示するために、JavaScriptを使用しています。
上記のコードでは、rearSpeedにリアタイヤの速度、rearDiameterにリアタイヤの直径、rearTeethにリアスプロケットの丁数、frontTeethにフロントスプロケットの丁数を入力します。計算ボタンをクリックすると、calculateRPM()関数が実行され、計算結果がresult要素に表示されます。
ブラウザで上記のHTMLコードを表示すると、入力フォームと計算結果が表示される画面が表示されます。入力した値に基づいて計算が行われ、計算結果が表示されます。
ご参考までに、このコードはJavaScriptを使用していますが、バックエンドのプログラム言語やフレームワークによっても同様の機能を実装することができます。
またまた驚いた!
なんと! 黒背景モードが現れて、生成したコードを一括コピペできるようなボタンも現れました。まさにコードをそのまま使ってくれというスタンスのサービス提供です。そしてコピペして使った結果が下記です。
エンジン回転数計算(最初の提案)
これは間違った答えを出す品物で、ちょっと使いものにならず。GPTにHLTMコードを教えてもらった感想
実際は内部の式がGPTの勘違いや、入力した数字の単位と実際の計算式の単位があってなく、指摘したら平謝りされたりしたプロセスがありました。
それはそれで楽しかったですね。時には自分自身でこの式はこういう式にしてちょうだいな~ と自分の式を使わせることも可能でした。
更にブログ主の好みをBPTに伝えました。伝えた内容はとしては
入力はプルダウン方式にして とか
SRV250の1~5速のギア比を教えるから それも選べるようにして とか
最終的にはギア比もパラメータに入れてエンジン回転数を計算して! とか
いろいろ要望してみたのですが、一発で正解のコードを書いてきたこともあるし、こちらが間違いを指摘しないと誤りに気が付かない場合もありました。
知識ゼロでもなんとかコードが完成しました。
冒頭の自動計算はこうして出来上がったものです。
世の中の進化は凄まじいものがありますね~
未来は楽しいか?
さて、私は85歳ぐらいまで生きれるでしょか? そのころの世の中はどうなっているのでしょうか?
電動オフロードバイクは安価に購入でき、爺でも扱えるほど軽量モデルが存在するのでしょうか? 世の中の動きについていけるハイテク爺になりたいです。(笑)
宇宙旅行やワープ航法、量子レベルまで分解して再生する転送装置、いつか実現する気がします。
その為には権力もった爺が変な判断して異常な発言や行動しなければね…
ロシアや中国をなんとかしてほしい… 一旦権力持つと引き下ろす手段ないのでやっかいです。一般企業でも権力もった爺はいますが人類滅亡に繋がる暴言や行動はないので我慢します。
0 件のコメント :
コメントを投稿
コメント頂いた内容は非定期の確認となりますので返信が遅くなることがあります。
ご理解頂ければ幸いです。