フーリエ変換には角周波数を扱うものと周波数を扱うものがある。角周波数と周波数の間には角度と1回転という差があるのみ。よって、周波数に2πをかければ角周波数となる。
シミュレーションで実物を扱わなくても仕事ができる環境を目指す。つまり家に引きこもって外に出なくてもOKな世界。
AUTOSAR-CanTpとAUTOSAR-DcmのCAN-FDシミュレーションは一括でやってしまう方針。CanTpをr4.xのA-ComStackを使用していたのはCAN-FDに対応するため。(伏線回収!)シミュレーション構成はCANの時
CAN回線ログとった。SingleFrameの確認。7byte以下のSingleFrame。8byte以上のSingleFrame。FirstFrameの確認。4095byte以下のFirstFrame。4096byte以上のFirstFr
リクエスト用のPythonコード書いた。8byte以上のSingleFrame。4096以上のMultiFrame。レスポンス用のPythonコード書いた。max_frame_sizeパラメータを弄って受信できるサイズを拡張した。
can-isotpでもたぶんCAN-FDはできる。拡張SingleFrameと拡張FirstFrameの構成を学んだ。
【CAN-FD】車両診断通信 その93【python-can⑥】
シミュレーション構成復習。CAN-FDの送受信のシミュレーション実施。
【CAN-FD】車両診断通信 その92【python-can⑤】
python-canのリクエスト、レスポンスコードの復習。CAN-FDとしてのリクエスト、レスポンスコード作成。Bus初期化時にfd=True。メッセージ作成時にbitrate_switch=True, is_fd=True。
【CAN-FD】車両診断通信 その91【python-can④】
改造版のcan.playerとcan.loggerの使用方法説明。ともに"--fd"というオプションを追加しただけ。can.player、can.loggerで再生&収録した。can.loggerが内包しているascwr
【CAN-FD】車両診断通信 その90【python-can③】
can.playerとcan.loggerがCAN-FDに対応していないことが発覚。即行でCAN-FD対応に修正してみた。can.loggerはまたちょっと別の問題あり。
【CAN-FD】車両診断通信 その89【python-can②】
can.playerとcan.logger復習。CAN-FD,CAN混合の再生用ascファイル作成。CANを混ぜているのは異常時の影響範囲特定用。
【CAN-FD】車両診断通信 その88【python-can①】
BusMasterはCAN-FDには対応していない。CAN-FDのascフォーマットはCANとは異なる。FDFビットとBSRビットのパラメータが増えている。
シミュレーション手順と勘所説明。python-canによるCAN-FD制御。can-isotpでCAN-FD診断通信(ISO15765-2)。AUTOSAR-CanTpでCAN-FD診断通信(ISO15765-2)。AUTOSAR-Dcmで
物理層、データリンク層をCANからCAN-FDに切り替える。CAN-FDはVector社の「はじめてのCAN/CAN-FD」にそこそこ書いてる。
NRC$78(ResponsePending)が一定回数を超えるとNRC$10(generalReject)を返すパターンを見た。この仕様はISO14229-1では規定されていないしかし、デファクトスタンダードである可能性が高い。よって、A
WriteDataByIdentifierのシミュレーションの結果を確認。メッセージレベルの確認。CAN回線レベルの確認。書いたあとの読み出しのためにReadDataByIdentifierを併用して動作確認することが多い。NRC$78返答
WriteDataByIdentifierのシミュレーション用のPythonコード書いた。WriteDataByIdentifierはセッションとセキュリティで保護されていることが多いのでそのテストがメイン。
ReadDataByIdentifierのシミュレーションの結果を確認。メッセージレベルの確認。CAN回線レベルの確認。マルチDID仕様が厄介存在しないDIDのリクエストはエラー。しかし、マルチDIDで存在するDIDがあればエラーにはならな
ReadDataByIdentifierのシミュレーション用のPythonコード書いた。ReadDataByIdentifierのマルチDIDに関連したテストパターンメイン。マルチDID。未サポートDIDを混ぜる。レスポンスメッセージ長が最
TesterPresentsのシミュレーションの結果を確認。メッセージレベルの確認。CAN回線レベルの確認。suppressPosRspMsgIndicationBitありのTesterPresentsはAUTOSAR-Dcm仕様としては特
TesterPresentsのシミュレーション用のPythonコード書いた。TesterPresentsの主目的から考えて、SessionControl、SecurityAccessも実施する。S3タイムアウト抑制が主目的。
SecurityAccessのシミュレーションの結果を確認。メッセージレベルの確認。CAN回線レベルの確認。SecurityAccessはセッション状態、セキュリティ状態によって挙動が変わる。セッション状態に紐づく形でS3タイムアウトにも依
SecurityAccessのシミュレーション用のPythonコード書いた。SecurityAccessの動作確認はいろいろありすぎる。サポートセッション。シーケンス。セキュリティアンロック状態のSeed。セッション遷移に伴うロック状態への
DiagnosticSessionControlのシミュレーションの結果を確認メッセージレベルの確認。CAN回線レベルの確認。NegativeResponseはDcmで自動判定して返すものと独自にコードを追加して返すものがある。メッセージ長
DiagnosticSessionControlのシミュレーション用のPythonコード書いた。通信パターンにはエラーパターンも含めた。存在しないセッション。DiagnosticSessionControlリクエストとしては間違ったメッセー
AUTOSAR Dcmシミュレーション構成の復習オブボードテスタ側のPythonコードは今まで使ったやつを使いまわし必要に応じて修正は入れる。シミュレーションを試す順番は以下。DiagnosticSessionControl。Securit
Dspのコンフィグレーションコードを書いた。大部分はセキュリティ、セッションの定義とDIDとの紐づけ。
Dspはアプリケーション層。ISO14229-1依存と完成車メーカ依存に分かれ、完成車メーカ依存はコールバック関数で対応。Dspの中でDIDに関連するものが最も複雑。DID関連を知ってしまえば、他のコンフィグレーションは比較的たやすい。
Dsdのコンフィグレーションコードを書いた。対応するセキュリティレベルとセッションの実態はDspにあり、Dsdからは参照するのみ。
Dsdは各サービスへの振り分けが目的のサブモジュール。同時にサポートするセキュリティレベル、セッションの判定も行う。上記目的から以下のコンフィグレーションパラメータを保有。存在するサービス定義。サポートサービス定義。サービスがサポートできる
Dslの構造体定義のコードを書いた。リストの終端はArc_EOLがTUREの時。※ OpenSARことArcCore独自の仕様診断サービスの開始停止、有効なサービスリクエスト時、セッション移行をトリガとしたコールバック関数が定義できる。
Dsl(Diagnostic Session Layer)はセッション関連のサブモジュール。P2時間、P2*時間、S3時間などの時間管理をする。実際に使用するCanTpのPudIdも内包。
AUTOSAR-Dcmの中身はdsl、dsd、dspで構成される。const定義されているものと、work用に変数で定義されているものがある。コンフィグレーション用の構造体は全部で50個くらい。
「ブログリーダー」を活用して、KEIさんをフォローしませんか?
フーリエ変換には角周波数を扱うものと周波数を扱うものがある。角周波数と周波数の間には角度と1回転という差があるのみ。よって、周波数に2πをかければ角周波数となる。
動画作成関連のバックナンバー用ページ。立ち絵を作ったり、動画作ったり、アイキャッチ画像作ったりなどを掲載していく。
MATLAB,Python,Scilab,Julia比較するシリーズの第4章。第4章では分類問題で最終的にはニューラルネットワークや最適化アルゴリズムの話だった。第5章はフーリエ解析学から高速フーリエの話がメインとなる。
立ち絵の配置: PSDファイルをAviUtlに配置し、画面サイズやフレームレートを設定。のっぺらぼう化: 目と口を消して、アニメーション効果を追加。アニメーション効果: 目パチと口パクの設定を行い、リップシンクを調整。
フーリエ変換を定義。フーリエの積分公式の一部を抜き出す。逆フーリエ変換を定義。フーリエの積分公式にフーリエ変換を代入するだけ。
Δωで刻みにしたので、極限を利用して連続系へ。数式上は連続ではあるが、一般的な表現ではない。区分求積法とリーマン積分について。フーリエの積分公式を導出した。
VOICEVOXとAivisSpeechキャラと一緒に!AviUtlを使った動画作成 バックナンバーはじめに以前、AivisSpeechのAnneliというキャラの立ち絵を作成した。さらにそこに加えて、AivisSpeechのアイコン画像を...
PSDToolKitプラグインの導入の仕方を説明。PSDファイルを探してGIMPで内容を確認。GIMPで瞬き用、口パク用のレイヤー編集。
フーリエに積分公式は複素フーリエ級数と複素フーリエ係数から導出する。周期2Lの波の数を示すnを周期2πに於ける波の数である角周波数ωに変換。角周波数ωの刻みであるΔωについて説明。Δωを定義することで、離散的な係数算出が連続的な角周波数算出に近づけていっている。
区分求積法とリーマン積分について。離散と連続の分け目。フーリエの積分公式を導出した。演算したはずなのに変化しない。つまり変換、逆変換が成立することを示している。
Δωで刻みにしたので、極限を利用して連続系へ。数式上は連続ではあるが、一般的な表現ではない。よって、一般的な表現に書き換える必要がある。
角周波数ωの刻みであるΔωについて説明。Δωを定義することで、離散的な係数算出が連続的な角周波数算出に近づけていっている。
周期2Lの波の数を示すnを周期2πに於ける波の数である角周波数ωに変換。ω=nπ/Lを使用して変換するだけ。これにより少し数式がシンプルになった。
VOICEVOXとAivisSpeechキャラと一緒に!AviUtlを使った動画作成 バックナンバーはじめに以前、AivisSpeechのAnneliというキャラの立ち絵を作成した。ほぼ独自に作成したが、Anneliの画像自体はAivisS...
フーリエに積分公式は複素フーリエ級数と複素フーリエ係数から導出する。変換を想定した式に変換。複素指数関数との積と積分、総和を経由すると元に関数に戻るというイメージが重要。
AviUtlのセットアップと拡張編集Pluginの導入を行った。mp4ファイルの入力と出力の方法を説明。アニメーションgifの対応方法を説明。
分数は割り算の別表現として理解しやすく、逆数を掛けることで計算が簡単になる。これにより、小数の掛け算や割り算の理解が深まる。一次関数の数式をグラフにすることや、グラフから数式を導くことは、データのトレンド分析や物理現象の理解に役立つ。微分は関数の変化率を求める手法であり、数値微分を使って近似的に求めることができる。これにより、物理学や経済学など多くの分野で応用可能。
Youtube動画やブログ記事のアイキャッチ用に作成した、VOCEIVX(四国めたん、ずんだもん、春日部つむぎ)、AivisSpeech(Anneli)の画像たち。Stable Diffusionで生成&少しペン入れ&GIMPによる補正したものになります。
各種フーリエについてまとめてみた。いままでは級数→係数の順番でやっていたため、逆フーリエ変換→フーリエ変換の順番が自然。実際には「フーリエの積分公式を求める」ことになるが、これは逆フーリエ変換そのものである。
各種フーリエについてまとめてみた。いままでは級数→係数の順番でやっていたため、逆フーリエ変換→フーリエ変換の順番が自然。実際には「フーリエの積分公式を求める」ことになるが、これは逆フーリエ変換そのものである。
モーメンタムを確認するプログラムの方針を確認。 以前の勾配降下法のプログラムをベースにする。 隠れ層のユニット数は4。 プログラムのフローを確認。 モーメンタム項とパラメータ更新が基本的な差分となる。
モーメンタムの更新式について確認。 指数移動平均を利用して直近の値を重視する。 モーメンタムの動作イメージについて確認。 最初は大きく更新して、最適解が近いと小さく更新。 勾配降下法で言うところの学習率が可変と同義な動きになる。
勾配降下法の更新式を確認。 勾配降下法の動作イメージを確認。 学習率が大きい場合と小さい場合で挙動が変わる。 ちょうど良い学習率を人間の手で探す。 これにより、一般的なパラメータとは異なるハイパーパラメータというカテゴリになる。
最適化アルゴリズムを取り扱う。 今回のネットワークだとさほど恩恵はないが知っていて損はない。 まずはモーメンタムから解説&実験をしていく。 最初は復習を兼ねて勾配降下法についても確認する。
モーメンタムを確認するプログラムの方針を確認。 以前の勾配降下法のプログラムをベースにする。 隠れ層のユニット数は4。 プログラムのフローを確認。 モーメンタム項とパラメータ更新が基本的な差分となる。
モーメンタムの動作イメージについて確認。 動作イメージの表現は難しい。 最初は大きく更新して、最適解が近いと小さく更新。 勾配降下法で言うところの学習率が可変と同義な動きになる。
モーメンタムの更新式について確認。 指数移動平均を利用して直近の値を重視する。 実際の指数移動平均とは異なっているので、その点は注意。
勾配降下法の動作イメージを確認。 学習率が大きい場合と小さい場合で挙動が変わる。 ちょうど良い学習率を人間の手で探す。 これにより、一般的なパラメータとは異なるハイパーパラメータというカテゴリになる。
今回改めてまじめに更新式を確認。 勾配降下法の更新式が一番シンプルなので今後の最適化アルゴリズムの更新式を見る際は比較対象になりやすい。
最適化アルゴリズムを取り扱う。 今回のネットワークだとさほど恩恵はないが知っていて損はない。 まずはモーメンタムから解説&実験をしてい 最初は復習を兼ねて勾配降下法についても確認する。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたJuliaコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたScilabコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたPythonコードで分類を実施。 大きく2パターンの分類パタ やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたMATLABコードで分類を実施。 大きく2パターンの分類パターン やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたJuliaコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたScilabコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたPythonコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたMATLABコードで分類を実施。 大きく2パターンの分類パターンがある やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を増やす。 表現力が上がるはず。 局所最適解にハマらないというより大域最適解に近い局所最適解が増えるというイメージ。 プログラム上の修正点確認。 ベクトル、行列演算ができるため修正範囲は極小。
多層パーセプトロンの隠れ層のユニット数を増やす。 表現力が上がるはず。 局所最適解にハマらないというより大域最適解に近い局所最適解が増えるというイメージ。 プログラム上の修正点確認。 ベクトル、行列演算ができるため修正範囲は極小。