組み込み系 Part2
レス数が1000を超えています。これ以上書き込みはできません。
リモートワーク事情から半田付けテクニックまで
組み込み系の話題、最近どうですか? フルリモートで組込みやりたいけど、それできる会社ねえかな? 完全なフルリモートワークは無理かもしれないけど
月2-3回出勤とか必要な時期だけ出勤なら割とあるでしょう
そういった会社が望むスキルセットや実力と相性問題で誰でも入れるとはならないとしても >>3
基本製造業が客になるから実機信仰は根強い。
持ち帰りで実機を借り出せるとしても、スタートアップ・納品時にしばらく常駐する覚悟はいるだろうな。
つーかもし自分が初見に仕事出すなら最低条件にする。 デバッグやテストで出社します。
バグが出たので出社します。
動作確認しながらコーディングしないとわかりにくいから出社させてください。
って感じだな、、、 >>3
現状できそうだけど、通勤圏に住むことを命じられてるから
結局単身赴任してる 昔はエミュレータが超高額だったけど、今は安くなったから
貸出してもらえるなら家でも仕事できるよね 最後は実機でテストやれだから
出社しなきゃいけない。 会社に住んでる仙人みたいな人がいて
その人がビデオチャットで実機動作の確認してくれる 実機でテストがまた、仕様通り動くか確認てことで、
何ヶ月もかかることもあんじゃん 実機も貸し出してくれたらええねん。
めちゃデカい場合は、実機テストの時だけ宿泊出張で
家賃高いアパートで単身はしんどいから、家帰らせてくれ
東京に帰りたい、大阪はもう嫌だ 大阪でめちゃデカい組み込みって伊丹のほうか?それとも南港か? 大阪で組込みって、
パナソニック、キーエンス、住友電工、ダイキン工業、
タイガー魔法瓶、メガチップス、椿本チエイン、象印とかのイメージ NECが作った4ビットマイコンなら全部しっている、
8ビットも各社いろいろ経験、 昔、9ビットマイコンやったときは頭がパニックになった 1バイトが8ビットでないマイコンってもうさすがにないでしょ >>25
ルネサンスやマイクロチップが公開してるマニュアル ルネサスをルネサンスと間違えるエンジニアがいると聞いて >>32
最近老眼が酷くて、ルネと打ったところで出てきた単語をタップしちゃったわ ルネサスのRはルネッサンスが語源だからあながち間違いじゃないんだけどね 滑舌悪いからルネサスって言いにくい
ネとサとスの間がどうしても突っかかるからルネッサンスと呼びたい ルネサンスおじさんの言う通りにCPUのマニュアル読んだ方がいいのかな ルネサス大変だな
生産に影響出るのは1ヶ月後らしいが >>23
>>25
CPUのハードウェアマニュアル(レジスタの説明までついてるやつ)
のこと。無料で読める。
3000円くらいでCPUボード買う
7000円くらいでE2lite買う
RL78のデータシート見ながらLチカ、タイマー、通信を作る
これで2か月くらいは勉強できる
んで、windows側でVisualStudioで通信ツール作ってマイコンボードをリモート制御
まで出来てやっと現場で少し役に立つレベルかな >>39
300円くらいでPIC、7000円でPICkit買って、初期設定からオシレーター、割り込み、タイマー、UART、SPI、I2Cくらいまでやればかなり勉強になるぞ PICよりESP32+VScode(+PlatformIO)の方が面白いよ 知り合いで使ってるところ知ってる、一点物を作ってる会社だけど 組み込みの人でラダーとかST書ける人が知り合いにけっこういるんだけど、このへん組み込みにはわりと馴染みのある分野なんですかね ラダーなんてのは、工作機械などの産業装置メーカーが多い。
家電などと違って
産業装置は客先の工場の環境や要望に合わせて仕様を変えなきゃいけないので
PLCを使う事でプログラム書き換えも容易にできるようにしている 組み込みエンジニアになりたかったけど気が付いたら30歳になってたわ 車載系って燃えてるプロジェクトしか見たことないけどこんなもんなの >>52 程度に差はあるにせよ
車載にかぎらず車関係のプロジェクトは酷い話ばかり聞く
まぁ規模が大きいし関連も多いし
技術者でもアナログな人間も多いしで大変なんだろうけど 組込みであまり炎上せず残業少なめの分野って何だ?
家電
産業装置
医療機器
事務機器
通信機器
輸送用機器
ロボット
などあるが・・・ 規格認証が絡まないもの、カーネルやブートローダなど下回りにあまり手を入れないもの(アプリ層の改修のみ)は比較的燃えにくい傾向にある
某オーディオアンプの開発はクソ楽だったな その分つまらなかったが 毎日、仕様変更、ソフトが完成する前に仕様追加
なんで、こんな動きするの?
いや、仕様書通りに組むとこうなるから状態 仕様担当、設計担当、実装担当がちゃんと分かれていないpjはだいたいモメるよね DRの準備に時間取られて実務できないのホントイラつく >>55
家電かな。小さいやつなら回路ソフトの2人で量産までやる。
ナビやレコーダーのようなデジタル家電はソフト大規模だからダメだぞ ルネもいいけど初心者ならSTM32が一番楽だと思うな、安いし 何気にPICって勉強になるよな
PIC2個使ってマスター、スレーブの通信プログラムとか 家電→機能が多く規模が膨大なものはデスマに陥りやすい。
産業装置→同じ装置でも客ごとにカスタマイズした仕様で作る場合もあるので混乱しやすい。中小企業はメカ・エレキが偉く、ソフト軽視の企業もあり。
医療機器→使用認可を得るための書類作成が開発以外に沢山ある。バグは殆ど全て直すので納期前にバグが出るときつい。
経験あるものだとこんな感じか >>66
説明が足りなくてすまん。
プログラミング言語C(K&R著)の演習の解答集がアンサー•ブック。今も売ってると思う。 え?今はもうPIC人気ないの?昔はみんな使ってたのにね
当時はAVRが出たかどうかの時期だったけどPIC以外はゲテ石扱いだったよ 装置メーカーのソフト担当だったが大抵の装置はメカで付加価値出すからな
ソフトの仕様は機種によって大差ないしけっこう楽
ただし上位との取り合いはクソだるい ソフト軽視は産業分野特有かも
そもそもハードだけでやってきた業界みたいなもんだから頭の柔らかい人も少ないし
ソフトウェアが複雑化してきた現代でも軽視のまんま意識を変えることもできないのではと いまだにH8マイコンの書籍とか普通に色々売ってるけど、どうなん?
RXとかはいまだ少ない。 ウチもIARばっかだわ
まぁコーティング自体はvscodeでやってるけど ハードウェアの挙動からエミュレートさせるデバッグ環境作ったわ 組み込みエンジニアって30歳でも若手扱いされるってマジ? 組込みはIT業界のなかでは一番長く居られる分野かと。 >>79
IARは導入高いし、年間サポート更新費用も高い
ルネは買い切りライセンスだし統合環境も日本語
>>85
腕前次第では定年までやれる
定年後でも個人で治具請負会社やってる爺さんもいた >>82
IARのエディタ使いづらいんだよな
未だにアレだから力入れる気無いんだろうなって コンパイラのエディタってどこも真面目に作ってるように思えん どうせ秀丸で開発するでしょとか思われてないか?
visual studioほどとは言わんがgrep検索置換インテリセンスマウスオーバーの反応、どれも鈍臭くてストレス溜まる vscodeの設定がよくわからん。
というかデバッガ使わないんですか?
自分はデバッガ無しでは絶対開発できないですねえ。。 デバッガ無しで絶対に開発できないんじゃWeb開発できないっすね ルネサスのhewって昔は20万したけど、今は無料?
IARはOSのライセンス料だよね? WEBもデバッガ動くぞ
ローカルのデバッガとサーバでセッションつなぎっぱなし
トレース実行もできるし変数の値も見えるしソースの一部だけ変更して実行も出来る
サーバサイドのほとんどの言語でできるよ
フロントというかJavascriptならブラウザ標準装備だけでもけっこう出来る
WEB系は主戦場だけあって開発環境かなり進んでるよ ice使うと処理止まっちゃうからオシロでデバッグだぞ >>98
Web系って日進月歩で進化してるね。
1:実行
2:printfで情報表示
3:ソース修正
4:コンパイル
5:1に戻る
大体1日中これやってるわ。 シリアル出力もICEも無い環境で仕方なくやったことはある。 >>98
おおマジか、サーバサイド結構進んでるんだな
firefoxのJSデバッガくらいしかなかったから結果的にJS頼りきりだったわ >>103
組込ってステップで追うというより期待のタイミングで出力きてるかとか
LEDで直感的に知れた方が楽なこと多いしな、ポートのビット弄るだけだし 組み込みがうらやましい、C、C++できれば食いっぱぐれないし
Webはもう嫌だ、フロントかえぐいわ リアルタイム処理はデバッグしんどいけど作ってて楽しい
モノを作ってる実感がわく >>103
モールス符号とか3、3、7拍子とかでエラーコード表現 どっからノイズはいってるんだ……?
基板に手を置くと安定するとか魔術か……? >>108
こういう輩が非リアルタイムはカンタンとかアホなことを抜かすんだろうな >>108
RTOSって使う?
自分はほぼタイムスライスで作るが >>110
被服の内側で切れかかってる線があるかもよ。
新品で買ったジャンプワイヤーでそんな不良に当たったことがある 組込みはCとC++でなんとかなるけど
物にもよるけどデバッグするときに色々機材が必要な場合があるからそれが面倒くさい。
動作テストで操作等をミスると、やり直し、ログ取り直しってなって、また機材つかって環境構築し直して
面倒な場合がある。 >>103,109
LEDに8bit程度の内部状態出力してオシロで見るわ。 >>100 >>106
ブレーク張らずに実行すれば連続動作見れるし
止めたい場合は止めればいいのだから、ICEはつなごうよ
LEDでやってますとか、悪い冗談にしか聞こえない
趣味ならともかく仕事では止めて頂きたい 現場でiec持ち込めないとか、ノイズ試験の時はLEDデバックしかない >>118
趣味って言うか基板にI/Oのモニターランプ付けるっしょ、それと同じよ? >>121
ICEの先にJTAG付けるんじゃないか? インサーキットエミュレータの意味では既にICEは絶滅したよな
今はJtagでCPUのデバッグ用隠しレジスタアクセスするだけだからなぁ そういえば昔のICEって仮想CPUみたいの付けてたよな
ロジアナで命令を拾って、表示してた感じ >>125
フルエミュレータも売ってるけど、超高いから買わないね Z80のICEが縦型ゲーム筐体かと思うような大きさだったり 今だにc++に移行できない製品が多すぎて開発効率が悪い
better cとしてでもいいから導入したいがナタ振るうほど頑張る気もないので諦めてる クラスだのオブジェクト指向だの余計な知識いるし、移行したく無いw
C言語でいい。 最近の装置はフル実装のlinuxだったりして
組み込みなんだかアプリなんだか分からないからなぁ
そんな状況だと高級言語やらスクリプト言語やら
様々な言語のごった煮状態だから
必要な知識が昔より多くなってんだよなぁ 組込の定義も理解してない頭の悪い輩が組込業界にいる絶望感 組み込みでもクラスが使えるとかなり便利
ただ、メモリーを大量に使うので外付けでSDRAMが付いてないときつい 確かに・・・
複雑になるとC++に逃げたくなるが、PIC18Fレベルのマイコンだとそうもいかない。
自然とCでカプセル、OOPライクという事なる。
PCアプリをXAMLカキコしながらC#でDDD開発を並行してやっていると、イライラしてくる。 普段からC++、C#、PICで開発してるが
作り難さ的な意味でイライラしたことないからようわからん C++までいくとメモリ管理が雑になっちゃう
Cなら今どれぐらい確保してるか肌感覚でもわかるけど 雑なのは無能だろ
ガベージがあるわけじゃねえからメモリ管理メッチャ気を使っとるわ
確保してるサイズをメモリ管理と言ってるなら単に小規模開発か大規模かの違いだろ >>143
まぁ 一年に一回程度、地球の裏側から"\0\0\0,,,"のJSONデータ送って来るのが、ローカル変数のchar tmp[]の配列が一バイト足りないだけだったからねぇ。
Blazorで作ったサイトでモニターしていたが、原因不明だった。
ESP32の当初EEPROMライブラリのReadにあったようなバグだw
なかなかメモリ扱いとそのテストは難しい。 new なんて使った事ない。
全て配列等事前に用意してる。
故にリーク0で365日連続運用できる。 new使ってリーク0で24時間365日動いてるが
業務系の多くがそうだろうけど 組み込みの場合、でかい容量使うときはSDRAM上に領域確保しちゃったりするから、動的な領域は使わないよな まずmisraで怒られるから動的メモリなんて使わん 組み込みって一括りにされても
組み込みLinuxでOSSでネットワーク機能がっつり対応したらheapサイズも凄い そりゃOS積むならそれなりにヒープ使うだろうけどOSレスならヒープを使うケースは少ないし使うときは慎重になる まあOSレスならそうだね
っていうかOSレスの環境でHeap使う事あるかな?
組み込みもいろいろあるって事だね OSレスの規模ならheapは使わんな
実際組込出身の人は動的メモリ管理ができない人が多い 大抵の場合、リンガーのスタック設定でなんとかなってしまう 組込みといっても下まわりから
アプリ層まで幅広い。
アプリ層は下周りがラッパーされていれば
ハードやOSのこと知らなくても担当できてしまう。 まぁ そんなバグがあっても、リモート更新なら地球の裏側でも安心。 かつては4ビットトマイコン民生品で書き換え世界行脚した事もあったが、もう不要。
RXなどローダーに32kbも使え、RAMで書き換え実行で楽ちんラクチン・・・ PIC18FもSTM32もラクチンで、ESP32など標準でotaが備わっているw >>157
そうだね
アプリ層はスマホアプリの開発と大差無い
もちろんOSやフレームワークや開発言語は違うが >>158
自分もROMをバックに入れて全国回ったことあるわ 昔、PC8001、9“CRT、ROMライタ、イレーサをボストンバックに詰め込み夜行列車で東京から天理のシャープに行って作業した事が有るが、夏の暑い中着くまでに死にそうだった。 おれ卒論Cで組んだけど実行速度がどんどん遅くなってたけど、あえはメモリ管理して
なかったからだったんだなあ 動的なメモリー要求は、静的なアクセスに比べ多大なコストがかかる。致命的に成ることもあるよ。
基本エラーを返す可能性が有る関数は使わないが原則だった。昔はね。 組込みって、やはりメーカーだから
大卒が多いの?
専門卒は少ない? >>166
いまどきメーカー内部でプログラミングなんかやってないだろ
だいたい設計はするけどあとは下請けに出してる
または派遣社員に作らせてるかどちらか >>167
効率悪いな、設計も全投げしないと外注メリットゼロだろ >>165
今時のフレームワークは全部動的だろ
エラーが怖かったらスペックに余裕を持たせとけばいい話なんだが
どうもズブズブの組込マンはギリギリとか低スペックハードに
限界性能の機能を実装することに興奮を覚えるマゾヒストが多くて面倒くせえ メーカーのプロパーだけど、
これまでは設計以降は
子会社やSESがやることが多かったけど
最近はプロパーも設計や実装、試験までするようになってきた。
ソフトで差がつく時代だから
技術持ってないとヤバいと危機感感じてるんだと思う。 >>171
誰がフレームワークの話してるんだよ メモリに余裕を持たせればコストも上がるだろ
話噛み合ってないから黙ってたほうがいいよ >>171
165は昔の話をしてるのに、今は....て言ってるから話が噛み合ってないんだけど文盲か? >>172
かえってそういう動きが非効率なのにな
どこに投資すべきかがブレると技術の確保が遅れる 内部で実装する能力がないと、外注費用が青天井になるし
品質管理もできなくなるよ
開発費の重さで倒産した電機メーカの事業あるある せっかく実現性とコスト考えていい感じに設計しても実装の美味しいところは若手や外注に譲らないといけない立場になってつまんねぇ
金とか関係なくエンジニアのエゴとして自分でやりたい プログラムを作ったことないやつが、設計すると矛盾だからけになって行き詰まるからな
プログラムデバックと並行して仕様デバックがいるんだよな >>179
それよく言うけどさ
プログラムが有能だからって設計も有能とは限らない
設計には設計の技術やセンスが必要になってくるよね
補助的な知識としてプログラムが役に立つことまで否定しないけど
やはり設計者としての技術が必要
プログラマとして育てたとしてもどこまでいっても設計者にはならないと思うよ ソフトウェアって、作ってみて初めて改善点が分かるナマモノだからなぁ
最初からある程度の予想は立つが、それ以上は何があるか分からないんだよなぁ
規模の違いもあるだろうが、かなりの実装経験が無いと設計時点で分かる人は居ないと思うよ >>180
文系の指示でプログラム作り出すと、収拾がつかなくなる >>182
アニメーションみたいに表層を動かせる人は居るが
内部構造にまで思いを馳せてデータの行き交う状態まで
シミュレーション出来る人はほとんど居ないよ >>183
設計って基本的に理系の仕事だと思うがなぜ急に文系が出てきた
情報系じゃなくても理系だったら何らかの形で(畑違いかもしれんが)設計について学んでると思うが文系だとそういう学科はないのでは?
プログラムで必要なのは「作者の気持ちを考える」ではなく「顧客の気持ちを考える」こと
そういう意味では作者の気持ちを考えちゃうタイプにコーディングさせるのは危険
下町の工場で作る製品だって工業高校卒が設計してそこらのおばちゃんがラインをまわす
少なくとも設計は専門的な教育が必要で、製造は現場で覚えるもんだ
現場の叩き上げが管理職になって活躍するケースはあるかもしれないが設計するケースはないよ 大学って、電気や機械の学科でも
設計はあまり学ばなくね?
電気回路の問題を解く、みたいな「解析」は学ぶけど
何か設計しなさいってのは卒研くらいじゃね? どんな大学出てようが自分で仕様考えて自分で実装して自分でテストする訓練をしないと設計スキルは身につかないぞ
まぁ文系は仕様考えられても実装することができないからそもそも向いてないけど理系だって手を動かさないとダメなやつはダメ >>180
一つ確かなのは、プログラムが無能だと設計も酷い >>185
設計は気持ちではありません。全面的に修正します。
仕様は顧客の要望を盛り込み、矛盾はないようにする
設計は仕様を漏れなく実装し、複雑さをなくし保守性を考慮する
実装は設計どおりに実装し、保守性を考慮する
あなたは実務経験が足りないか、そもそも無いですね。 文系の性質はそもそも作者の気持ちを考えがちとかそういうことじゃなく、単に数学ができないだけだぞ
つまり理系の下位互換 その分頭数は多いから飲食とか人手が必要な仕事に就くべき あと、設計がダメなのに精神論で押し通すやついるよね マネジメントというのは、つまりは「文系にも出来る様にする」ということ。
仕事の粒度もそうだし、メモリ管理もそう。
あいつらはほんとに初歩でつまずくから、そのケアを
「いかにしなくて済むか」の仕組みづくりこそが肝です マネジメントの基本は文系と無能を採用、アサインしないことだろ プログラマーはドラえもんのポケットだからな
あんなこといいな、できたらいいな、 組み込みから業務系に移ってきたが PG単位での仕事としては業務系は大人数ってのもあってマジでつまらん
作ってるものに動きがほとんどない 虚無 それはたまたま羽振りの良い顧客で人月が水増しされた仕事に充てられただけだろうけど
業務系はそもそも最初から全然楽しい仕事じゃないよ、死ぬほどつまらん
だから壊れて自殺する奴もITジャンルの中では最も多い
俺の同僚や得意先も精神疾患で退場3名、死因は知らんが死者1名いる >>198
会社の業務を把握してその業務を支援するようなツールやシステムを開発するタイプのものだよ ボタンポチーしたらデータ追加更新してメッセージ出してなんやかんやする画面を作る簡単なお仕事
以下今までの経験上ありがちな事例
・クラス設計の概念がない バッチ処理みたいにベタ書き
・単体テストはテストコード書かない 画面操作のスクショ取ってエクセル貼り付け
・改修箇所はコメントアウトして残す かろうじてsvn
・言語はjavaかvb
向上心のないプログラマーの墓場みたいな現場が多かった 寝ぼけて逆刺ししたUV-EPROMがピカピカ光る世界よ、いま一度 新品のEPROMは足が広がってるので、まず最初に机に押し付けて、足を狭めるんだけどやり過ぎて逆に広げるのは難しい。
デバッグが終了してアルミテープを窓に貼るのはいつも未明。 >>201
業界の1%にも満たないレアな会社にいたんだな、お疲れ様 >>206
組込の人がWindowsで何か作る場合、VBよく使うで
C/C++でWinソフト作る人はあんまいない 組み込みやってるが、raspberryとpython使ってるぞ 組み込みの人は、実はC,C++があまり得意じゃない Cはまあまあ得意だけど、
C++はよく知らないから
ネットに載ってるやつや既存のコードを真似て
何とか書いてたな ジグツールとかVSのC++つーかCとWin32APIで作ってたな。
最近はC#が楽ちん。 某社の複合機はスクリプト言語からCからごちゃ混ぜだから
あるいは使ってるかもな >>214
人は成長をやめたら一番成長していた時代を思い出すものだよ 成長をやめたから一番成長していた時代を思い出すのか?
それとも、一番成長していた時代しか思い出せないから成長が失われたのか..... じゃあ何だよ
アホが
インプットを得てアウトプットする、全部情報処理だわ 基本情報は取れて当たり前。
だけど持ってる人と持ってない人でも技術力の差が無い。
エンベデッドシステムスペシャリスト試験に合格してるか、
アーキ担当ならそれに加えてシステムアーキテクト試験も合格してるぐらいが良いと思う。 基本情報なんて右も左もわからんやつが基本的な知識を手に入れるためのツールだよ
組み込みとかWEB系とかの分類以前の基礎的な共通知識 ただ、資格持っててもプログラム書けない人がたまにいて、
担当したことのない製品のソースコード一式を渡すと
すぐ拒否したり、
プログラムの構成をレクチャーしてくれないと無理とか、
何か文句つけてやらなかったりする人が一定数いる。
プログラムの構成とかいちいち教えなくても
ソースコードを渡したら
自力で設計書読むなり、コードを読んで解析できて
初めてだからバグとか出るのはしょうがないにしても
手を動かしてコードを書いてくれる人のほうが
多分仕事では使える人。 レクチャーぐらいしろよ
バグ一つ出したらその倍ぐらい手間かかるじゃねーか 資格を持ってることとプログラムが書けることは関係ないだろう
資格に拒否反応起こす人はそこらへんを勘違いしてる uart、spi、i2c、canの基本技術が変わらないからな
でもこれからはrtsを組み込んでmtqq、m2m、otaでawsやazureなんかのクラウドに接続するのが標準仕様になる可能性がある プログラムの勉強しよう
↓
入門書程度は真似して動いたけど書いてることがいまいちわからない
中級者以降向けの書籍に書いてることがわからない
↓
体系的な知識を得たい
↓
資格試験を通じて勉強
↓
わかる、わかるぞ!公式ドキュメントや中級者向けの書類が読めるぞ!
↓
よし、プログラムの勉強を今度こそはじめよう!!
こんな感じじゃねーの?
ITパスと基本情報あたりって書いてる単語の意味を覚えようってレベルだよね
例えば2進数も知らずにプログラミングの勉強はじめるのってちょっとやばくね?
そのレベルだとLチカも苦労するし、やる意味もない あと、組み込み系だと論理演算が大切だな
論理演算を知らないとif分地獄に陥る >>228
経験が無くても取れるのが資格だけど、実務は経験がすべてだからな >>236
論理演算なんざCのHelloWorldの段階で触れるだろ
特別視するほど何が小難しいんだ? >>238
業務アプリとは作りが違うってことでないの >>238
8ビットのPICマイコンで2で割るとき
a / 2と書いてしまいがちだが
組み込み系やってる人は
a >> 1
と書く 組込み系なら回路図見て信号の制御を考えたりすることもあるだろ
マイコン周辺の回路くらい読めるくらいの知識は必要だ >>240
なんでPICなのかわからんが、PICでも普通にシフトで割るが
処理コストくらい考えてるぜ
というか式によっては除算は正しく動かん >>239
業務アプリも論理演算普通に使うぜ?
SQLにすら必要だからあるのに いまどき業務で1ビット以上の論理演算はないな
詰め込む必要もない
こむずかしいことはライブラリに任せておけばよい 昔はビットフィールド使いまくったけど、確かに使わなくなったなー
演算の最適化はしてるけどね 容量の少ないシステム担当してる人ら
そういうの自慢するけど、
どうなん?って思う ローエンドマイコン使ってる人って、整数型で全部計算するよね
そうすると-1は0xffffだったり補数になるから、情報処理の問題に出てくるような知識が必要になる
32ビットクラスだと、値がオーバーフローして符号がひっくりかえることもなくなったけど、ローエンドだとunsinged 宣言とか大切になる Webは動的型が増えたけど、業務系で型を意識してないと金がとぶ
高額を扱う場合マシン依存のintはそもそも使うべきじゃねえし
unsignedが無くて40億を処理できず、64bitじゃないために1兆が処理できず
ってのはちょっと前の世代なら注意しながらやってる 金勘定はコボルの仕事じゃないの?
そもそも組み込み関係ないし 組込の人って思いこみが激しい傾向でもあるのか?
世間知らずなだけ? Javaって組込みで使うことある?
スマホや黒色家電とかの実質PCみたいなリッチな環境で動くUIアプリとかじゃなくて、
モーターやLEDを制御したりとかのガチな組み込みで そういうのもあるみたいですね
でも実務上、価格競争や性能競争がある限りは、Cとアセンブラの1択でしょうね >>240
gcc や clang は a/2 や a*2 で a>>1 や a<<1 と同じコード吐くでしょ
もう20年前からコンパイラの最適化は下手にアセンブラで書くより賢いコード吐いてくれるんだから、仕事ならメンテ性を優先したソースを書くべき
趣味ならどうでもいいが 最適化禁止のプロジェクトだったな
もっとも、そこまでシビアなパフォーマンスを求められる案件じゃなかったけど >>257
20年だとオプティマイザーのレベルを上げると、原因不明のバクとか出なかった? 昔はコンパイラのバグあったねー
某携帯開発で2度経験。解るまで1ヶ月かかって鬱になったよ コンパイル最適化のバグはそこそこあった
挙動が怪しかったらまずコンパイラが吐き出したアセンブルコード確認するのが普通だった
10年前には利用者が少ないオープンソースじゃないコンパイラは使わなくなったな 自分はコンパイラーが怪し過ぎて、ロジアナまで使ったことあるよ OracleのDBでスキーマ切り替えたのに切り替わらず
公式に問い合わせたら一瞬タイムラグがある仕様ですってかえってきて
開発が発狂してたのは見た 本当に発狂してる人はいた
文字通り奇声を上げてフロアから飛び出して行った 68000系のCPUは奇数アドレスのアクセスが発生すると止まるからな
しかもコンパイラーが勝手に奇数アドレスでアクセスするようにコンパルしてる。 マルチだったか有料コンパイラの最適化がおかしかった20年前のだが。 最近はコンパイラがおかしなコード吐くように書いたお前が悪いという風潮だしその通りだと思う >>261
switch文やcast周りでよく不具合でた印象 >>238
組み込みでは論理演算ではなく、ビット演算、マスク演算が多くなる
通信データなんかはビットフィールドが今でも多いし
レジスタなんかはビット割り当てが多い
reg |= (value<<n) でregにビットnに1セット
reg &= ~(value<<n) でregのビットnを0にクリア
こういうのは基礎でのように出てくるし共用体出てくるし
構造体はパッキングする(パッキングのときの挙動に気を付ける必要がある)
あとポインタの幅が2バイトと4バイトが混在したりする
__farや__nearを意識してないと謎バグが起きる
あとconstは定数ではなくてROM割り当て値だったりするので注意が必要
自動車のCAN通信なんかはデータを極力詰めるし
アクセプタンスフィルタなんかはマスク演算しらんと設定解らないと思う
マスク計算やビット演算解らない場合はコード触らせられないな バウンダリーとアライメントの違いは?
volatileはどういった場合に必要?
ワリキンて何? >>276
それにビックとリトルが出てくるからややしいのよ >>276
EEPROMに保存するときもビット単位でパックしないと収まらないよね
初期値付きの static 変数も linker script で配置してやらないと ROM に乗ったりするよね
DMA使うときはメモリのアライメント気を付けないといけなかったりするから、自前のmalloc作ったりするよね >>276
>__farや__nearを意識してないと謎バグが起きる
これ例えばどういうケース? 上で言ってることわかるし、そういう落とし穴を考慮するのも経験やスキルなんだけど、もう少し誰にでも分かりやすい組み方できないかなといつも思うよ
ちょっとやそっとじゃ触れないコードばかりになって手離れが悪い >>276
組み込みではって、別に組み込み以外でも当たり前に知っとるし使っとる
どのあたりが自慢要素なのかわからんな組み込み専業マン
>__farや__nearを意識してないと謎バグが起きる
これは知らんな組み込みだけど
>>278
そんなん誰でも否応無しに触れるやん だれでもできる
だれでもやってる
みんなそういうんだ
そいつにやらせたら結果は悲惨そのもの 画像ファイルとか何かしらバイナリデータを扱ってりゃ
マスクもビットもシフトも使いまくりだわな 16ビットだとchar型で定義してもポインターは+2づつ加算されるぞ
当たり前と言えば、当たり前だが >>285
えっ!そんなにすっかすかにメモリ使うんだ。
したら64ビットなら8つ置きのすっかすか? >>287
16ビットだとデータバスが2バイトだからA0のアドレスがない
32ビットだとデータバスが4バイトだからA0とA1のアドレスバスがない
だから、アクセスできない レジスタに取って来て8bitシフトしながら取り出せや >>288
やけに特殊な環境だな?
30年以上前の80系,68系及び日本メーカー固有の8bitCPUから16bit系,32bit系,今ARM系64bit使ってるが char 型のポインタのスカラー値が8bit以外の環境にお目にかかったことないわ >>290
ソフト的な話とハードてきな話をごっちゃにしてたよ
ハード的には1バイトごとにアクセスできないからchar型で宣言しても2バイト、4バイトでメモリー空間にはアクセスしてるってこと
68000系のgccはchar型のデータが奇数個だとエラーがかかったりした そういう風にメモリ繋がってて、8bit単位で扱いたいときはCPU側がよろしくしてくれてる
ワードマシンは本物のコンピュータにはわりとあったような気がした 68000の事なのかもしれんがハード的ににはワード単位でアクセスしていてもソフトウェアのポインタは普通に+1してるが
なにが当たり前だ 配線がつながってないんだから、アクセスできないよ
奇数アドレスをアクセスするとイリーガルアクセスエラーで割り込みが発生してスーパーバイザーモードに連れて行かれる
確か、SHは各セクションのモードで8ビット空間を設定できたと思う エンベデットって簡単ですか?
量は多いけど問題簡単そうなので
取ると会社からお金もらえるから取ろうと思うんですけど >>280
__far void*・・・メモリアクセス空間が20bit・32bit
__near void*・・・メモリアクセス空間が16bit
__farが必要な領域(64KBより遠く)に有るデータを__nearポインタで参照しても近所にある別物のアドレスを参照してしまう。
なお、MS-DOS時代からプログラムしてるおじいちゃん達にはおなじみw >>303
確かnear jumpは16bitの相対ジャンプで、far は絶対アレスのジャンプっだった様な。近くならnear jumpがコストが低かった。 near はセグメントレジスタで示す64KBのセグメントの中の16bit のオフセットアドレスじゃ無かったかな?
68系のアドレッシングモードは相対アドレス表現が多くてハンド逆アセンブルするときいちいち相対アドレス計算が面倒だった一方、86系はセグメントアドレス含めて絶対アドレス表現が多くてアドレス計算が楽だった気がする Verilog, VHDL, System-Cなんかの経験は? HW技術系ってシーケンサなんかもそうだけど何故かPascalスタイルが多いのよね
簡単で取っ付きやすいけどC系に慣れてると怠さを感じる 非プログラマのハード設計者でも覚えやすく誰にでも扱いやすい言語として
論理回路やラダーなど図を組み立てていく形式のプログラミングとか
文字プログラミングでもPascalチックとか採用されてるんだろうな Verilogはsnakeケースで書いてたわ
でもPascalケースの方が楽だし見やすくね?
snakeケースは文字数増えるし、減らそうとして変な略語とか使われ始めるし嫌だわ ラダー図は組込みなのかな?
ラダー図を書き込むPLCのソフトを作るのが組込みかな? >>306
16FXはあるな。あと、RL78もあるみたい。
>>307
0x00000010と0x00010000が同じアドレスを示す変態がいるので
絶対アドレスとは言いたく無いかも。 PLCも組み込みだろ、産業ロボットとかエレベーターとか plcプログラミングはプログラミング自体よりもplcと繋がるIO機器(センサーやスイッチ、インバータなど)の知識を叩き込まないといけないのがなぁ
インバータとかサーボとか、パラメータ数百あるしメーカーによって同じ機能でも名称違うし動きも微妙に違うしで苦労した plcなんか使わないで、マイコン使っちゃえばと思うんだが マイコン面倒くさいから既製品の組み合わせと配線だけでほぼ済むPLCの方をよく使っちゃう >>318
でもPLCはそれ自体に高い信頼性があるから、逆に余計な部分に気を取られず
パラメータだとかそっち方面に集中できるとも言えるけどね
基板を一から作ったりソフトを自分で組んでる人ならわかると思うけど
メインロジック以外の余計な部分のトラブルの方が圧倒的に多いから PLCってプログラムというよりロジック回路のイメージだが >>327
基本24Vでたまに12Vとかあるイメージ マイコンじゃなくてPLCを使うのは、
仕様変更多いからでしょ?
産業装置なんかは客ごとに仕様違うから? モジュール継ぎ足せばIFも拡張できるのは楽
あと耐久性かな 工場内の悪条件でも止まらず動いてくれるし
ただし開発環境はクソ プロジェクトファイルとプログラムが分離されてないからバージョン管理が困難だしコピペもしづらい >>332
ラダーはPLCのプログラミングのはず
尚、俺はやったことないです 組み込みでSQL書ける人ほとんどいないよね
やっぱ使う機会ない? ほぼない。
開発はCやC++。たまにアセンブリ言語。
その他、作業の自動化、効率化などで
シェルスクリプトやコマンドプロンプト、VBAなどを使うくらい。 今時アセンブラなんてほぼ書かんな
書いた内容と動作が食い違うときに偶に確認する程度で かろうじて読めるけど書けないかな
c#書ける人はけっこういる 開発用にツール作ること多いし
あとpythonも自動化によく使われる おれもc/c++, python, c#, shell,batスクリプトだな業務で書くのは
ごくたまにverilog, jsも
組み込みには多そう ツールやweb系へのインターフェイスはpythonでやっちゃうな pythonだと100ステップくらいでwebサーバー動いちゃうからね
開発補助用に飛び道具使えると楽よね 他の言語もフレームワーク導入すりゃほぼ0ステップだが 組み込みやってるとライブリーがどうやって動いてるか把握できないと使えない人いるよね
自分は最近ようやく、それを克服したよ >>347
組み込みだとHeapサイズやCPU利用量の設計も必要だから、導入したいライブラリがどれだけHeap使ってどれだけCPU使うか見当つかないと困る
まあリソースが潤沢なシステムならそれほど気にしない事もあるけど
あと最近はセキュリティ脆弱性を気にする必要性が上がってきて、ブラックボックスとして使うことはできない 某石のC環境がprintfスタック使い過ぎて禁止になったっけなぁ 安易にミドルウェアとかOSSとかOSとか、
他者が作ったソース使うと、
セキュリティ屋から文句言われる時代。 >>347
確かにそんな感じだな、ライブラリがよくわかってないから
Winアプリ作ってても主要部分をライブラリ化せず
毎度ソースごとプロジェクトに持ってきてて、ひでー作りで ライブラリっていっても、
.dll、.soのような動的ライブラリ、共有ライブラリを指すこともあるし、
.lib、.aのような静的ライブラリを指すこともあるし、
コンパイル前の汎用的に使用するために作ったソースコードを指すこともあるし 下周りを開発する部署、
アプリを開発する部署と別れてる会社に居た時は
下周りやアプリをライブラリ化してリリースするから
ソースコードの保管場所がお互い非公開で
プログラムがどうなってるか部署跨いで聞かないとわからなくて面倒だったり、
システムの全体像を知る人が育たなかったり、
派閥できたり、微妙だったな >>356
そこまで簡単では無い気がする
今時の組み込みだと、OSがlinuxだったりするものもあるし
古いものもあるだろうし、環境に応じて色々対応出来ないとダメだろうから
案外大変かもしれないね
CかC++で組める物も多そうだけど、アセンブラなんかも場合によっては必要かも >>356
組み込みはメモリー構成をイメージできないと難しいよ
とくにARM系はmmuの設定が分かってないとうまく動かない みんな最初から、そのレベルなのか。組み込み業界ってすげー つか、1つ言語覚えれば、
別に他の言語でもすぐ対応できるようになる
アセンブリ言語なんか、CPU変われば
初見になることが多いと思うけど
そんなのはマニュアル見たりググればすぐわかる 大半はそんなこと考えず既に出来上がったシステムに手加えてるだけだけどな
つまんないけど >>356
電子回路や機械に関して勘が働く程度の知識がないとテスターとしても役に立たない
>>359
最初はパッパラパーだからそんなん全然わかんないよ
パッパラパーでも許される新人のうちに勉強するんだよ
まぁ、5chには生まれた瞬間から世界の真理を知ってそうな勢いのやつも結構いるけど
そこまですごくなくてもやっていける 職業訓練で来年から訓練期間が2年間の組込みコースに行くつもりなんですが
主な座学は
・情報処理システム概論
・プログラミング言語
・ネットワーク概論
・情報システムセキュリティ概論
・システム工学
・電気・電子
主な実技は
・プログラミング実習
・電気電子回路実習
・ネットワーク構築実習
・コンピュータ制御システム設計実習
となっていて
資格は
・基本情報技術者試験
・組込みソフトウェア技術者試験クラス2(ETEC)
・品質管理検定(QC検定)3級
などを知識の定着度テストのように受けて取得していくようです
職業訓練を受ける前に何をどういう順にやっておいたほうがいいかを教えていただけると助かります >・プログラミング実習
>・電気電子回路実習
ここら辺は自分でお題を作って自分で勝手にやってみる
学校の実技でここら辺をやるのはほんと時間の無駄だと思う
まともなエンジニアになるつもりがあるなら学校では復習をやるつもりで臨むべき
勉強の順番なんてもんはない
プログラムと電気電子と機械が融合しているのが組込みなんだから
プログラムをやって詰まったら電気、詰まったら機械って感じで
つまみ食いしているうちに全体像が分かるようになってくる。 学校とかに教えてもらわないと勉強できないのはヤバいから
独学はしなさいね。 組込みソフト屋になりたいなら
プログラム言語(C/C++)からで。
大学や専門学校のようにif文を習うのに90分、
for文を習うのに90分、みたいな、ちんたら習うのはNG。
1週間とか短期間で一通りやって、
あとは3000行くらいのプログラムを自分一人で書いてみること。(世の中にでてるアプリの真似でもいいし、作りたいものがあるならそれを作ってみるのもOK) >>365
返答していただきありがとうございます
ご指摘頂いた辺りは、自主課題としてやるべきものということで
既に手をつけておいてもよいと解釈いたしました
とりあえず必要な知識として電気電子、機械、情報、通信から
組込みに必要な概論の部分をひとまず抽出した基礎の基礎理論を学習しつつ
それをきちんと消化吸収できるよう数学物理で必要なところは磨いておけというような啓示と受け取りました
ひとまず所謂電気電子数学と呼ばれるような数学と回路理論を物理的意味を意識して学習しつつ手を動かす勉強もやるという方向で何とか頑張ってみます
ありがとうございました 電気・電子・機械の知識って、使わないこともあるから
会社入ってから知っても十分だよ。
それよりまずはソフトだよ。
組み込みとか関係なくプログラムが書けることが重要。 プログラムなんて誰でも書けるだろ
本当に必要なのは要求通りに作れる技術
要求と異なる動きを潰して行ける忍耐力だ 回路、通信、メカ、制御とかは周辺の知識だから
製品や担当箇所によっては必要ないこともある。
例えばOSが乗ってる製品は、アプリレイヤーを担当する人はOSでハードウェアは隠蔽されてるので、回路の知識は不要になる。(パソコンやスマホのアプリ開発者がパソコンやスマホの回路のことまで知らなくていいのと同じ。)
「いやいや、僕はOSを開発する会社に入りたいんだ」とかなら別。 >>372
たまには自分の部屋から出て外の世界に触れてみたら? 最初はシンクロプローブ片手に、セットアップ、ホールドタイムの概念とテストプラグラムの入門から。
74ロジックでDRAMアクセスとかCRTCのモックアップとかがいいな。
そこから数幾星霜 >>377
まさか、社内教育としてだよな?
製品レベルでそれやってたら出来上がる頃には他社から次世代機が発売されてるぞw オシロをわざわざシンクロとかいうのは何でですかねぇ >>370
がいう通り、いくら知識があっても想像力がないとダメなんだよ
うまく動かないときに、何が起きてるから想像する知識と、それを裏付ける方法。
ベテランはたんにソフトを書くだけじゃなくて、長年の経験から起こりそうなことを想像しならがら、不具合がでないようにソフトを書いてる。 職業訓練でRTOS教えてくれるところあるならいいな
独習で覚えたけど時間かかった 覚えるものなのかな?
OSの教科書に載ってるような一般的な知識をベースとして持っておけば、
どんなOSを使うにしても入っていける気がするんだが。 理論だけじゃなく、一回でも実装してみたかどうかは大きと思うがな OS使うっていうけど、ライセンス買ってるの?
いくらなんでも、仕事でフリーのOSなんて使えないよね 開発時にはcentos使って本番機にはredhat入れるとかやね そのOSはここで話してるOSと同じようで違うものだぞ ソースが開示されてない商用OSよりは、OSSであるフリーのOSの方が問題解決は早いが。今時商用OSってどこの使ってるのよ? 本当に知らないのか?それともアホのフリしてるのか? 普通にFreeRTOS使ってるよ
そういうのにシビアな仕事もあれば緩い仕事もある
仕事はすべてガチガチなのが価値があるとか思いこんでるやつらがいるが実に薄っぺらい
本当に仕事してるのか?と疑問になるわ 想像でものを書いていると思えるほど内容が薄いって意味では? Linux、vxworks、μiTRON系のOSなら使ったことあるけど、別にどれでもいいわ 職種を変えてこの仕事をする場合の入職難易度が高いなあ
情報技術関係職種の中でもかなり入り難い
しかし、それがよさでもあるんだろうなあ 一番入りやすい気がするんだが。
大学や専門学校でC言語って大体やるし、
一度は習ってる人が多い
PythonやPHPとかのほうがわからん あんまり組み込み知らないんだけど
ホントに若い人居なくて人手不足なの? 20年くらい、OS-9 vxworks 今はLinux ライセンス料払わんくていいので面倒くさく無くて良い。 >>400
人手不足 と言っても、ちゃんと使える人じゃなきゃねぇ...
そのうえ、微妙に範囲の広い知識や技術求めるくせにあんまり給与には反映されないから
元から好きな人間じゃ無いとさっさと転職してくのも多いし 生涯で考えるとこの仕事は悪くないと思う
イケイケ業界のところは年齢でぶった切って
ある程度の年齢になると技術があっても仕事がそもそも無いみたいなことがある 引き継ぎ難易度が高くジョブセキュリティが堅固なことかな。 下回りほどコメント書かない傾向にある 特にジジイ連中 >>405
引き継ぎ難易度もなにも担当してた奴が最初からいねえんだけど
セキュリティガバガバだし >>404
広く薄く何でもそこそこ分かる能力だとマジで思ってる >>408
i++; // iをインクリメントする むしろ、iなど意味不明な変数名にするからコメントが必要なのであって
target_index++などと書けばコメント要らんだろ? >>411
文脈次第だろう
簡単なループのループ変数に長い名前をつけてもかえって見づらいだけ >>412
410みたいなケースはその簡単なループにコメント付けてる例だと思うんだが?
なら変数名サボらずに意味の通る名前にしたらコメント要らんのじゃないか?って話しなんだが? >>409
ああ、手が思うように動かず口しか出さないお偉いさんね >>414
そういうのは何も知らない奴と言うのだよ >>413
文脈次第というのは、
コメントが必要なケースはコメントではなく変数名で対応しましょう
10回ループしたいだけとかそういう用途ならiで十分、コメントも不要
ってことでは? ループカウンタに凝った名前つけなくていい
それよりも、変数はローカルで閉じてほしい
作業用変数をファイル内staticやグローバル変数で宣言する奴は死ね 「組込み」のほうがかっこいい。
多分「組込み」のほうがよく使われてる
「組み込み」はダサい 組込みソフトウェア管理者・技術者育成研究会
組込みシステム技術協会
産業技術連携推進会議 情報・電子部会 組込み技術研究会
車載組込みシステムフォーラム
組込みイノベーション協議会
組込みシステム産業振興機構
組込みシステム開発技術研究会
組込み系の団体は全て、「組込み」としてる。
個人のブログとか、あまり組込みを知らない人は
「組み込み」を使う傾向にある。 昔の写植時代の名残らしいね(肝心の詳しい理由は忘れた....)
他にも「組合せ」最適化とかも専門用語だと組み合せとかにしない もしかすると文字数削減のためかもな
昔って文字数制限が厳しくて新聞とかでも略せるならなるべく略してたみたいだし 見栄というより検索時代に検索避けとして上手いことになってる ジャンキーじゃなくジャンキな
3文字以上は伸ばすなよ
組み込みエンジニアたるもの日本工業規格を遵守せよ 間違えたスペルで変数名を付けちゃうと恥ずかしいよな >>432
組み込みマンはそういうの気にする奴多そうだけど
変数名のスペルなんかいちいち見てないから大丈夫 >>435
正しいスペルと間違ったスペルでそれぞれ独立の変数として有効に機能しているソースがあって、メンテしながら頭がクラクラしたことがある。 kum-i kom-i、両方とも名詞形成語尾の-iだから送り仮名は不要かと まぁ組込み業界の世界では「組込み」だな。
どの団体でも「組込み〜」となってるし、
大学(院)や専門学校、ポリテクの学科・コース名も、
・組込みソフトウェア工学科
・組込み技術研究科
・情報学研究科附属組込みシステム研究センター
・組込みシステム大学院コース
・電子機器組込みソフトウェア学科
・組込みエンジニアコース
・組込みシステム科
・組込みシステム技術科
・組込みマイコン技術科
など「組込み」としてるところが多いし。 >>437
vscodeにスペルチェックついてるな
あれ微妙にうざい >>439
なんかのポリシーみたいでケツの穴の狭さみたいのを感じる
ハマザキじゃなくてハマサキです、みたいな 74シリーズなNAND回路組み合わせてメモリやCPUを作ろう
みたいなゲームが若者の間で流行ってるらしい >>443
別。
インターネットに繋がらない組込みはIoTではないし。
組込み機器がインターネットに繋がるのがIoTではないか? インターネットに繋がるモノが、
パソコン、モバイル端末以外にも増えたってだけだね。
だからネットワーク関連、セキュリティ関連のミドルウェア/OSをポーティングして
その上で通信機能のアプリを実装してねってことくらい。 AWSのRTOSがあったり、今後小さなマイコンも全て繋ごうとしてるよな
車のライト付けるのにMQTT経由でデータ通信して点灯なんてことがありえる >>451
それは無い
セキュリティーでにあり得ない インターネットにつながる上の開発と、そうない組み込みの開発じゃ全然世界が違う
んだろうなあ Webは2〜3年で言語とフレームワーク変えてくぐらいの覚悟がないと食えないぞ Webって現時点で年齢で切ってるから怖い
将来もこのままならやばい >>458
金融系の内部システムとかならまだあれだけど、
B2Cな部分は全部ダメだね…
一つのパラダイムが2年持たないもんな Webでイケイケなやつで技術つけても年齢重ねたら仕事なし
巡り巡ると組込み良いぞになるかもな Webでイケイケなやつで技術つけても年齢重ねたら仕事なし
巡り巡ると組込み良いぞになるかもな AIっておもにデータ分析の分野で、Webとか組み込みとかとまた全然関係ないよね >>465
最近流行りのチャットbotとかweb系AIじゃない? >>465
そんな認識で大丈夫か?
産業機械も車載もAIがんがんやってるが >>470
そのAIは出来合いを利用しているだけでしょ 最近駆け出しっぽいwebの連中が入ってきてレベル下げてるよな AIエンジニアもいつかはオペレーター化するとかなんとか >>471
意味がよく分からない
OSSを使うとできあいとかそういうことを言いたいの? >>474
意味よくわかんないんだけどどんなAIを利用しようとしてるの?
例を具体的にあげてもらわないとわからない、AIは色々利用できる環境整ってるから 組込みWeb系ってそのまま定年まで行けて老後の保障つく?
どっかでついていけなくなって再就職ってなるときって40前後ってみとけばいいの?
直面した人たちの次のキャリアってどうなってるんだろ? 組込みでもメーカー本体(自社開発)に入るか、
SESに入るかで全然違うかと。
メーカーだと、40前後でPMや管理職になれなかったら
キャリアチェンジで品質保証部とか
他の関連部署行きになる場合が多いけど、
SESだと仕事自体無くなる危険性もある。 組込ってそんななの?
変な業界だな
Webや業務ゲームなんかと違って、組込の技術は何年経ってもそんなに変わらんのに
現場からわざわざ離すとか間抜け人間の集まりか? >>480
linuxがOSだったりしたら組み込みというほど組み込み感が無い気がする
組み込みもいろいろ対応できないと仕事にならないかと
車とか対象が固定の仕事だと同じような事しかしないかもしれないが 組込みがというより日本企業的キャリア設計上そうなっちゃうんでは?
とにかく管理職ってのも今の時代変だとは思う
研究開発でもそんな感じなところあるし
総合職制度の弊害かも >>481
組み込み感って何やねんw
マイコンのおもちゃ弄ってるだけが組み込みじゃあるまいし 地元企業でのんびりコボラーやってる同級の方が年収が1.7倍ほど高いわ
組込業界ってなんでこんなに安いのか知らないけど 券売機も電光掲示板も自販機さえもWindowsだしな >>485
そういうの結構あるよね
ジャンルは組込みだろうけど単なるWindowsアプリと大して変わらないけどね
昔そういうのやった事あるわ 最適なOSを選択するのが仕事人であって、好みを言い出すのはただの趣味人 最近、node-redやりだしたけど、あれでも組み込みっぽく動くな
将来はこんな感じの仕事になるんじゃね そもそも最適なOSすら選ぶ必要もないしなぁ
要件満たしてれば後はどうでもいい
大事なのは、ちゃんと動くこと ちゃんと止まること 開発、修正コストなんかをちゃんと考えんと
システム刷新で全部作り直しになって死ぬで 心意気としては分かるが、さすがにベアメタルは非効率だしバグ埋め込みそうだし
物や環境によるかもだが、ちょっと無茶言ってる気がするぞ OS無しで作ったことって、
学校の実習や趣味の電子工作以外で無い。 40年前だと、8ビットCPU(Z-80)が全盛でOS無しが普通。
開発はcp/mを使ったが、実機はOS無し。
WordMasterでコード編集、M80,L80でコード作成、PIPでRomライターに転送。
今考えるとCPUの全てを把握できた時代だった。
CPU、PIO、CTC、8259等マニュアルも薄く簡単だったな。
16ビットになってからはOS無しはきつい。 >>496
スーファミは65816という一応16bitだったけど普通にアセンブラだった
68000なんかはアセンブラが組みやすかった
流石にPS1はR3000だったのでアセンブラなんて生産性が悪いしそもそもハードウェアのIOなどは非公開だったのでCのライブラリ経由でしか作れなかったが >>495
プロセッサーはOS使うが、主要な機能が全て入ったシングルチップマイコンはOS使わないでタイマー割り込み使って処理を切り替えていくようなソフト作るよね RAM0.5〜2K ROM1K〜4Kくらいで8bitマイコン
リタイアした先の趣味な世界にしか、もうそういうの無いのか
なんか悲しいな もう半田ごて遊びで使うようなCPUですら高性能になっちゃった >>498
FreeRTOSでもいんだぜ?
別に割り込みゴリゴリでもいいんだが >>499
趣味でいいだろ
仕事で今更1ビット単位でちまちまメモリ節約する環境に戻るのは悪夢 >>502
それはそれで、面白かった。
数バイト大きくてROMに入らない時とか、まずジャンプを相対ジャンプに変更とか。楽しくは無いな。 >>503
まあ、ある意味面白かったことは同意する
でもコンピューターに本当にやらせたい事をプログラムする目的にとっては無い方がいい制約
小さいメモリにプログラムを収めること自身が目的なら話は別だけど >>504
Cの共用体とかビットフィールドってのも、
メモリーの節約が主目的、圧縮技術も。
ストレージ、通信から見ても、サイズが小さい=善とも言える。 相対ジャンプだと1ループあたり2クロックも増えるの悔しい
みたいなのを楽しみたい >>495
制御用のマイコンなんて、イーサネットでも積んでない限りは >>499 注文の少ないそんなマイコンを使う意味がない
昔は仕方なく使ってただけ
本職ではなくて、電子工作お爺さんみたいな人ばかりだねここは 5chはマウンティングゴリラのマウンティング会場だからな
・すごい仕事をしている
・すごいマイコンを使ってる
・すごい計測器を使ってる
そういう話をする場だよ
しょぼいマイコンを使いこなしている自慢はすごい仕事をしている自慢の一種だな マウンティングってほどの話でもないだろ。マウンティング過敏症やな。 マイコンの話されただけでマウンティング取られたと感じてしまうのはさすがにどうなんだろうか 自分が相手にマウンティングされて不快な思いをしているんじゃなくて、
動物園でゴリラAがゴリラBにマウントしてるのを眺めている感じ 組み込みの仕事は好きだが組み込みプログラマは嫌い
向上心ゼロ、新しいこと覚える気ゼロ、設計グチャグチャ、コードベタ書き、単体テスト適当、実機テストでやたら粘る
VBプログラマとかコボラーも同じ雰囲気あるね 組み込みはノイズ対策やら、ハード絡みのイレギュラー処理を最後に入れ込むからグチャグチャになるよね 後から入れ込んでも大丈夫な設計してないからそうなる 最後にグチャグチャにはならんだろう。
グチャグチャにする奴は最初からグチャグチャ。 >>520
ならないって
後からイレギュラーの継ぎ足しなんてどの業界にもいくらでもあるし ifの中にif分追加して、さらにelseを使わなくちゃならない状況だと最悪
それならビットフィールドでフラグ作って論理演算にすれば良かったとか 関数化したらスッキリだぞ
どうせインライン展開されんだから同じ事 >>524
あるねぇ そういう事。
数千点の入力チェッカーのリアルタイム判定でのLED、ソレノイド出力や合格判断は、ビットフィールドパックの演算になる。
逐一、if ifでやっていたら、遅くて使い物にならない。 >>527
アセンブラやってなかったプログラマーはそういう発想がないよな >>530
逆に、アセンブラ出身者(テストプログラマー)は、カプセル化やDDD等抽象化設計にうとい。
両方身に着けるには数十年の経験と勉強が必要。 画像とか音声とか何かしらバイナリデータを扱ってりゃ当たり前に使うけど
必ずバイト単位でビット操作する事になるね 古いシステムのリプレイスだと確実にビット管理されたデータもあるし >>532
あるよ。 >527は業務系側でやっている。
基板側アセンブラマクロでやっているのは、もっとクリチカルな部分。 パワーあるプロセッサーの組み込みなら、クラス定義にして、ビット判定はライブラリー化するけどね >>533
昔の日本メーカー独自マイコンには任意ビットの単独操作できる命令があったな
Cビットフィールド関係の操作とかでCコンパイラがその命令に最適化してくれる訳でもなく、アセンブラ使う時しか関係無かったが >>538
Z80にはないなんて誰も言ってないし示唆もしてないだろ 「Aに<は>あった」だから「B, C, D...」には無いだろ
Z80は海外メーカーが開発したんだからAではない ビット操作なんて実行レベルじゃただの論理演算なんだから
固有ビット指定出来るニーモニックなんか意味が無いよ #define setbit(x,y) (x |= y) もしくは x|=(1<<y)
#define clrbit(x,y) (x &= ~y) もしくは x&= ~(1<<y)
でいいのでは
シフト and orで計算できるから専用命令なんて要らないわ 単純に、専用命令があるとサイズ低減と速度向上の両方が満たせるとかじゃいの? 成り立ちがコントローラであり、初期の頃はビット操作が主な処理だったからじゃないの?
今だってドライバー内ではビット操作が多い。
専用の機械語が今必要とは思わないが。
今も残ってるのは互換性のためかな? read modify writeが必要ないので、その分早いのと排他制御が不要になる。 GPIO扱う場合はビット操作あった方がいいけど
組み込み用のCPUだとコンパイラでそういう命令を使ったコードをはくはず
AVRだとビット反転命令なんてのもある
というかここは本当に組み込みのスレなのか? >>547
あくまで組み込みスレであって、組込みスレとは違うのじゃ PowerPC には指定したビット範囲だけをアクセスする命令がある。(というかほとんどのレジスタ読み書き命令に指定できる) 孤独なので呟きます。
とある製造業の会社で働いて数年になるのですが、ハード開発がよく炎上し、ソフト開発は放置状態です。私もコーディングが多少得意なだけの無能なので内職していますが、精神的に参りそうです。リーダー層も無能なので今は特に咎められません。この話をするとよく羨ましがられるのですが、ソフト開発が炎上する世界とは常に隣り合わせです。
期待してくれている人もいますが、周囲からは、辞めるか、ハード(実験)に転向してほしい圧を感じます。ハードとソフトの両軸開発がしたかったのですが、組込みソフト開発の虚しさを感じることもあり、そこから逃れられないのが割と堪えます。もはやなにを目指せばいいのかよく分かっていません。
ソフト開発で幸せになるには何が必要なのでしょう。 所属してる会社が悪いわ
ハードは守り(信頼性、規格遵守)、ソフトは攻め(付加価値)が昨今のスタンダード
それが実現できていない会社にいるからいらんことで悩むんだわ
ソフトが強い会社に移れ
ハードへの拘りを切り捨てられるならアプリ開発の会社にシフトするのもありだろう IoT時代はその関係性の両立は不可欠だけど
未だ立場はハードが上、ソフトは弱者みたいな頭の悪い会社もあるしな >>550
とても良い環境だと思う
俺の幸せは隣のプロジェクトの炎上を眺めることなので
常に燃えてるならまさに天国だわ テレワークできるって国際アウトソーシングもできる可能性があるから
テレワークが難しい業務のほうが逆に雇用の安定感はあるんではないかと思い始める
その上で参入も難しく単純労働の移民にもできない業務だとなお良い感じ The.NipponJin
海外はテレワークでも仲良く効率的に仕事に集中できてんのに
日本で真っ先に考えることと言や雇用の安定不安定切り捨てアウトソーシング
仕事しねえで頭にウジが沸いてるんじゃねえかと >海外はテレワークでも仲良く効率的に仕事に集中できてんのに
これ笑うとこ?
テレワークに幻想抱いてない?
というかあっちのビッグテックで急速にオフィス回帰に戻してるところがあるのはなぜ? なおGoogle、Amazon、Facebook、Appleのいずれもオフィス回帰してる模様 >>556-557
扱ってるプロジェクトもでかいうえに組織の規模がでかすぎるからだよ、見りゃわかるだろ
数百人、数千人規模ならたかがしれてる Microsoft、Twitter、Slack、Salesforceなんかは逆に拡充してくようだ 勤務形態ばかりGAFAに合わせたって、GAFAになれる訳じゃないんだから無意味
事業、勤務時間、序列構成、福利厚生、給与なんかも全部GAFAに合わせないと マジレスしちゃうと相応の付加価値を提供してないから無理でしょ
テレワークに過剰に期待を抱いてるのも典型的日本人って感じがする GAFAは福利厚生やオフィス環境が整っていて快適だろうから自宅より捗るのかも
一人一人の席が個室同然で元からチャットを有効利用してたり
社員食堂が無料だったり
そこいらの貧乏な企業のオフィスじゃ真似できないでしょ >>550
ハードをメインにして、ソフトはおまけにするのがいい
ソフト専業だと不具合起こしたら胃に穴が開くぞ ハードの不具合もみんなソフトのせいにされてソフトでどうにかしろと言われるからね ソフトはあとでも直しやすいけど、ハードは量産始まってたら嫌がられる
だからハードが悪くてもソフトでなんとかなるならソフトで対応ってことになる >>568
ソフトが対応するのは別に構わんが、そういう事態になぜ陥ったのか反省せずに、
できるんだからやれすぐやれ今やれ、遅れたらお前が悪い
ってなるのが嫌 今じゃFPGAで回路の大半を作るから
ハードも修正可能な件 ハード治すとそれまで動いていたソフトが動かなくなる。 そこはI/Oを同じにしろよ、ソフトにばっかり頼ってないで >>577
うちはテストパターン組む人は在宅多いよ 会社PCにカメラ繋ぐのを許可してもらえたらリモートで動かしたいところなんだがなあ デバッグやテスト、実機や機材使ってなんか調査したい時以外は在宅勤務だわ。
基本的に仕様書や設計書、コード書くのは在宅でもできるし。 ここには携帯電話開発の地獄を経験した人はいますか?
当時の思い出話を聞かせてください。 最大手で2000年初期のキャラクタLCD時代に関わってたことあるけど
地獄ってほどの関わりじゃないから参考にならんな スマホの新機種開発だったけど、真っ黒けの多重派遣だったのでバックレた FOMA初号機やったけど仕様書なしでコーディングしてた 前機種からの移植とかで
仕様と動きが異なるみたいなバグが何百件と大量にでて、
納期まで時間無いから
仕様書を実装に合わせるってのが多かったな APIの説明書が一つにつき一行程度のもの渡された。 >>592
最初から16桁対応だったし
何も対応無しだったから覚えて無いよ 5Gはどうして遅延がないの?
どのような技術が使われていますか? >>590
楽天市場なんかのAPIも一行ぐらいだよ
二行ぐらい説明してるのもあるけどさ aitendoの部品は説明書すらないぞ
信号名で想像するしかない ひろゆきさんがyoutubeで組み込みについて語ってるの見て、
この人もっとマシな人かと思ってたら、ラズパイで売って儲けるとか
なーんも知らんだなって 知らんのに適当言ってんだな ってちょっとがっかり
組み込み=ラズパイなんだ でもスマートウォッチくらい小型化が必要とか余程特殊なことでもなきゃ
下手に基板作って開発費膨らますよりラズパイでCPUは解決で良さそうだけどな
安いし
I/Oも通信も一通り付いてる、ドライバもある、至れり尽くせり ひろゆきは多分IT知識そんなにない。
オブジェクト指向の説明もカプセル化の説明になってた。 >>600
スマートウォッチん中身もARMじゃね?
たいていの開発用の基板なんて馬鹿みたいにデカいだろ
まあ、本当の基礎開発者じゃ無ければ見る機会も無いだろうがw >>602
ARMがどうこうじゃなくてラズパイより小さいもんじゃなけりゃ
ラズパイまんま製品として使えばいいじゃんと ラズパイを製品に組み込むとか、ハードウェアの保証も無いのにやらねーよw 産業利用されてんのに信頼性云々とか
そこいらの会社の素人がARMの回路書くよりは何倍も信頼性高いぞ ラズパイの信頼性の話でなぜARMの回路書くとかぶっ飛んだ話が始まるのか ラズパイがあんのにわざわざそれより程度の低い基板を作るのって
車輪の再開発の失敗くらい間抜けなことだ そもそもflash memoryを死ぬほど書いては消してるシステムんか使いたく無いわ >>612
制御マイコンとして使うならアルビノの方が向いてるでしょ
ラズパイはリッチ過ぎる 小型webサーバー作りたいとかそういう用途ならラズパイでも良いかな
小ロット電子工作ならアルビノで大量生産するなら専用のマイコンになるんじゃね
組込の人じゃないから知らんけど ラズパイに限らず今どきの組み込み向けLinuxならどれも大体激しく書き込みするとこはデフォでtmpfsでメモリ上に割り当てられてるし
ログやデータが保存する必要あってもHDD繋ぐか定時アーカイブさせれば十分だよね? >>618
うん、>>614みたいのはなんも知らんのなってのがすぐわかる >>617
複雑じゃないとか小規模だったら
ラズパイじゃ大袈裟だからマイコンでええね 制御工学は、
制御系設計からソフトの実装まで一人が全部やるような会社だと必須。
大企業とかそうでない会社は、
制御系設計をして仕様を決める人、
ソフトを仕様通り実装する人と分業されてるので、
めっちゃ理解してなきゃいけないわけではない。 未経験から?50で採用ってすごいな
詳しく話聞きたい >>631
デバック要員
このボタン100回押して、暴走しないか確認しといて テスターとテストエンジニアやQAスペシャリストは違うからね。
気をつけてね。
テストエンジニアやQAスペシャリストの人をテスターと呼ぶ人いるけど。
もっというと、日本では、
「テストエンジニア」や「QAスペシャリスト」、「ソフトウェアエンジニア」、「システムアーキテクト」、「プロダクトマネージャ」、「プロジェクトマネージャ」、「ドメインスペシャリスト」、「ブリッジSE」、「開発環境エンジニア」、「開発プロセス改善スペシャリスト」という職種は定義されてるけど、
「テスター」や「プログラマー」という職種は存在しないから気をつけてね。 単にテストする人、単にプログラミングする人は
職種として国レベルで定義してないので、
「日本ではテスターやプログラマーとしてやっていくのは推奨していません。テストやプログラミングがしたいなら、テストエンジニアやソフトウェアエンジニアになってください」と言うことだと思うよ。 組込業界は肩書きとか役職名とか誰が上か下かとか、目くじら立ててそう お前らはITSSやETSS、UISSとか知らないの? 某Hで組込みOSの関数作ってたけど組込みじゃないよな
やったのはLチカくらいで主にソート関数とか作ってた >>644
モーターやセンサーを制御しての制御系でしょ
論理だけ返すのはただのプログラムさ >>645
じゃあ基本は通信しかしないECUは組込じゃないの? >>645
PCで何かのセンサを使ったりモータを動かしたら組み込みなの? Windows IoTのPCを産業機器に組み込んで制御めっちゃしてるけど 制御系って要するに制御する信号を送ることでしょ?
組み込みは専業で働くコンピュータが内包されていること めんどうくさい
>>643以降、ひとまとめに組込でええやん PC9801でプログラムが走ってて大きな工場のラインの機械を動かしてるのが制御系
目覚まし時計とか炊飯器が組み込み 市販のディスプレーやキーボードを付けないのが組み込み系 そりゃメモリも狭いからな
8バイト単位なんだから1ビットぐらい削っても仕方ないですよね
とか言ったらキレてくるからマジで 128ニブルしかメモリが無いマイコンでファーム組んだ経験がないやつに何が分かる 心が狭いというか、視野が狭いのが多い
アセンブラやマイコンは得意なのにLinuxにレイヤが上がっただけでついていけなくなるようなのが多い
多分上のラズパイ嫌いの話もそれが原因
あとAIとか最近の技術話をすると毛嫌いされる
反面教師にしてるわ Linuxからレイヤが下がってもついていけない奴多いよな Linuxとかもう5年以上使ってないから
忘れてしまった。 最近の組み込みは通信系のソフトが組めないとなんにもできないよな
UART、I2C、CAN、bluetooth、TCP
さらに、httpやmqttのネット系通信 >>666
そんなもん1日でできるだろ
お前は天災なんだから まあ、モジュール組み込んで、入出力繋げるだけだからなぁ え?
どこの馬の骨とも分からん奴が作ったものなんか使うの? >>669
今ではCPU作ったメーカーがモジュール公開してるから
実績ありのコードだぞ
自前で作ったモジュールよりよっぽど信頼できるだろ
上司がな お前ら口だけ天才が人のコード使うとかありえないわ
コンパイラから作ってるんだろ?
白状しろよ 昔はlinuxでシェルをもりもり叩いてたけど今や完全に忘れた
まあチートシート見れば思い出すから未経験とは違うけど >>670
メーカーが作ったコードなんてアテにならんよ。 >>675
日本がダメなら どこならまともなんだよ。
フィリピンかボリビアかナイジェリアか。
まさかアメリカとか言わないよな。 日本のメーカーはダメだった(ことがあった)->日本のはダメ->日本以外はOK
こんな思考回路の人でもイケル組み込み 今の日本は品質も業界も信頼性は地に落ちてる
日本以外って括りはあながち間違いじゃない 日本はバッシング受けやすいから
ぶっとんだことができないので
外国に負けていく 組込なのかなーって所に派遣で入ったけど一ヶ月放置された挙げ句に何しに来たんだと怒られて契約終了 >>683
放置されてってどゆこと?
キミはキミで一日勤務時間になにしてたん >>683
毎月そんな現場だったら楽に食っていけるのじゃ 派遣を雇って勝手に動くのを待ってるとかヌケサクか?
組込業界ってIT業界だけどIT業界に疎いから当たり前に偽装請負もやらかすし
体育会系脳だからハラスメントも横行、コンプライアンスとは程遠い業界だよ >>684
直属の指示者は外出ばかりで何も指示せず放置
課長に何しに来たんだと叱られて契約終了
知らんよ >>685
開き直ってれば楽そうだけど精神的にキツイ 普通、「作業何かありますか?」って聞くよね。担当居ないならメール送ればいいし。 派遣なのか、SES(準委任契約)なのか、請負契約なのかでちがう。 SESは命令不可能だから指示したら偽装請負になるぞ 偽装請負が問題化して禁止されてから10年以上経つのに知らないのが組込業界 SESはプロパーの窓口担当者からSESの窓口担当者にしか指示できない。
請負は窓口担当者に依頼したら物が完成するまで指示不可。
派遣はプロパーの誰からも指示可能。 そう、SESはあくまで別会社の社員で常駐してるだけだから
直接指示して動かそうとするのは違法
派遣社員に勝手に動いてもらおうとするのも的外れ 何か達成目的があって派遣を入れると思うんだけど違うのかな 一人常駐なら指示・管理するのは当然
みたいな「本当にわかってないプロパー」もいるから要注意だ ちなみにプロパーとSESの関係だけじゃなく、
SES一次請けの窓口は、SES二次請けの窓口にしか指示できないけど、ここも窓口じゃない奴に指示したりとか、結構違法な会社ありそうな雰囲気。 >>684
たまにいるよな、お前みたいな意識高い系
お前なら給料0円でも一生懸命働いてくれそうだわ 働きたくないけど、稼ぎがなくなるから働いてるだけ。
なので会社のためにQCDを最適化するための方法考えろとか、
本作業以外のことをやらされるのは苦痛。
開発以外の余計な作業はせず、残業もしないって方法だけでいいじゃんって感じ >>704
仕組みを作る側に回れば、給料増やして仕事量減らすこともできるよ いや、仕組みも作る側なんだが、
たとえばテストの自動化とか、
それ作ってる時間あったら
その時間に開発作業やってとっとと定時で帰りたい。
新製品で最初に時間取らせてもらってやっておくなら効果があるかもしれないが
保守案件で今後大規模な改修も少ないと予想される製品で
思いつきで、そいつが評価されるためにやらされるから腹立つ。 テスト自動化って、
自動化の仕組みを作る工数より、テストの工数が多い場合に役に立つが、
大概は自動化の仕組みを作る工数のほうが時間がかかり、
逆に残業時間や合間ににやれと言ってくる職場もあり、
そして、「テスト工数が○%削減された」とか言って、
作った時の工数は伏せてマヌケな上司に伝えて、
評価だけされるためのものだと思ってる >>707
汎用性持たせて次の制作にも使える様にするんだよw 実機テスト自動化トライしたことあるが、仕様の時点で自動化を見越した機能盛り込んでないと無理だわ
実行結果を吐き出させる機能が貧弱だったのでセンサーあれこれ付けて結果判定するようにしたけど結局ケースの半分くらいは諦めて手動でやることになった
しかも汎用性も低かったので他の機種に流用できず・・・
自動化ナメてた やるなら仕様策定時から見越しておくべき テストを自動化して楽になったー定時帰りだーってなったことあるか?
俺は無い。 自動化はテストを反復可能にするためであって楽するためじゃねぇよ
自動化してもひたすらメンテナンスしてテストを手厚くしていく作業は必須 大概、上司にやれと言われて、
実施する工数はきちんと確保してくれず、
合間や残業で皆めんどくせーとか思いながらやってる雰囲気。
やるだけで「施策を行った結果、開発工数が○人月短縮できた。(短縮できた工数は予備校や塾の合格実績のように誤魔化し)」とか言って上司の成果になるから。 上司なんざ0.001%も仕事の役に立ってないのにな 組み込みの大半は単体テストすらろくに自動化できてなさそう 三菱がやってたような試験結果のそれっぽいランダム値を自動的に書き出すツール使うのって
この業界だと一般的なの? >>714
ハード絡むから自動化はロボットアームとか使わなきゃならんしw >>715
実際のテストは下請けが人海戦術だよ
部署違うから何とも言えんけどボールペン書きで提出された結果を
リーダーがエクセルに入力していくようなやり方のほうが主流のはず
ランダム値なんて使わず考えられた値が採用される 単体テストやってないはマゾだと思う
新規開発だと単体テストしながら作った方が絶対早い 単体試験の仕様書って、どういう書き方してる?
1行1行、
「入力:変数○○が1の状態でステップオーバーする。 出力:XX関数がコールされ、戻り値xxが変数○○に代入されること。」、
「入力:変数○○がTRUEの状態でステップオーバーする。 出力:分岐に入らないこと。」
とか確認内容を書いてる?
今の会社がこれやってて糞面倒臭いんだが、良い方法ある?
昔働いてた会社もExcelに修正したソースコードを貼りつけて、横に1行1行確認内容を書いていくやり方で、糞面倒だった。 テストする関数の一覧を書いて
C0、C1、C2についてそれぞれOKかNGかを書いていくだけだな。
1行ずつ確認することを書いてたら
大規模な開発の時に途方に暮れるだろ。
残業地獄になりたいなら1行ずつ書いてもいいけど、
その書く労力をもっと他の事とか
単体テスト自動化に使えばいい ちゃんと書いとかないと、何がOKだったのか分からないじゃん テストクラスをdoxygenに食わせてテスト仕様書にしてる ちゃんと観点をコメントで書くの前提だが
ドキュメントとソースが分離してるからメンテナンスが辛くなるんだわ ソースのコメントをドキュメント化すればいいだけのこと 詳細設計書はどうしてる?
関数のフローチャートまで書いてる?
昔の設計書は、フローも文章だけで書いてある。
プロジェクトによっては、詳細設計しないとこもある 最近C++のプロジェクトに参加してるけど、オブジェクト指向だからか?機能が追加されるたびに
似た機能のクラスをコピペして修正して規模がでかくなっていく。
理解はしやすいけど。 継承はわかるけど、クラスのコピペだらけになってるから
今更継承すると、なんでここだけ?ってバランス悪くなる
リファクタリングする余裕も無し この様子じゃbetter Cとしてすら活用できてなさそう 開発中はベースクラスに手を加え無い保証なんか無いんだから
コピペで正解
リファクタリングは安定してからでいいよ だからきちんと計画されたクラス構成ならまだしも
無計画にクラスを勝手に継承したらダメやんw 組込みでC++でまともにオブジェクト指向やってる現場見たことない。 クラスコピペ量産することこそ無計画そのもの示してるだろ
言うまでもなく基底クラスも継承もクラス設計で決めておくもんだし仕様変更があればどちらも見直すもんだ 根幹のクラスを作って派生は勝手にやってじゃないの? >>737
計画されたクラスって何やねんと
生活の一部のように使っててそんな深刻に考えたこともねえわ C++使えるほどのフラッシュ容量あるのがうらやま。
typedef struct {
void Write(int csno, uint32_t data);
uint32_t Read(intcsno);
.
.
} IChipSelect;
typedef struct {
Object parentj;
IChipSelect cs;
.
..
} TPCBV0;
とかCでoopまがいの事やっている。
こんなんでも、随分、再利用、拡張性、メンテ性が違う。 組込みってコード書く量少ないよね
今はPCのアプリやってるけど、
同じ工数で組込みの3倍くらいのコード量だった >>743
C言語じゃないし意味不明だからプログラム書くのやめてほしい >>739
何社も入った大規模なプロジェクトだと
後から調整って無理目なんだよ
勝手に他社の基底クラス使うとか何の保証も得られないから
自己責任で使うしか無い
当然まるっとコピペして来る事になる >>744
PCアプリは考えることが少なくて済むからな >>747
双方の考えること、考えないことを列挙してくれ
必ず穴があるから 容量を気にする必要とか、
人命にかかわることがないなら
PCアプリも組込みもそんなに違いないかと。 PCアプリは同じ工数でも
組込みより修正コード量多いって、
両方経験ある人からよく聞くね。 組込業界全体で人命に関係してるのってどのくらいの割合なんだ?
ちなみに業務系の死因は過労死か自殺が多いが、自殺は主に客の方 なんか人命の意味間違えてないか?
組込み機器はバグを埋め込むと人命にかかわる製品も多いのよ。
自動車、航空機、医療機器とか >>752
だからその業界は組込業界でどれくらいの割合なんだ?
ちなみに、うちの組込は人命に関わらん うちは最近異常動作が人死ににつながるものが増えてきた
>>754
そういう話は君しかしてない PCは固まるのが当たり前の時代もあったし
でもカーナビが固まったら、キレるよな 車載、FA、医療機器は特に厳しい
drで品保と毎回バチバチやってる >>750
組み込みは目の前の機器で動けばいいからそういう意味では楽
環境(温度等)が違うと動かないなんていうのはあるけど 組み込みはブルーカラーの脳筋だから
肉体的損傷による死亡以外は死と認めないのだろう >>761
ユーザーのPCに何が入ってるか、どんな設定かで正常動作しない事もあるしな >>761
目の前で動けばok こんな縛りで仕事をしたかったよ >>765
なんだろう、すごく意味を取り違えられてる気がする お前らの会社で、品質保証部の呼び方は、
品保、品証のどっち?
品質管理部だと、品管かな? >>765
ロボットアームで地球の裏側の組込でもやってるのか? 組込みのテストって開発がやるじゃない。品質保証の存在意義がわからん >>769
会社が自社商品として品質保証するのと
部署内でバグありませんでしたってのの違いはデカいぞw 第三者検証(総合試験、システム試験)を
開発者がやったりする会社が結構ある。
頭おかしい。 別に総合テスト=第三者テストとは限らんし
わざわざそう謳ってるなら開発者がやっちゃダメだが
ウチは総合テストは開発者がやってマニュアルテストは有識者と新人それぞれに実施してもらう
んでだいたいマニュアルが遅れるんで最後の最後に滑り込みでテスト終わらせるのが通例 マニュアルテストってどこの会社の用語だろう?
総合テスト、総合試験、システムテスト、システム試験は
結合試験の後に実施する試験の一般的な用語だが、
マニュアルテストはあまり聞かないなぁ。 うちは基本設計、詳細設計、実装、単体試験、結合試験までは開発者が実施、
総合試験はSESのテスト屋が
要求仕様書(機能仕様書)をインプットに総合試験仕様書を作成して試験実施を行う感じだな。
機能が膨大なので、機能を覚えてもらうために新人が試験実施することもある。 さすがに試験項目作成は外注できんわ
実施は人海戦術でクソ安いテスト屋に投げることはある
けど結局そいつらの介護で工数取られたりしてなんも得しない 介護ってw
どこのシルバー人材センター使ってんだよw テスト屋でも単なるSESじゃなくて
ほんとにテスト専門に行ってる会社に依頼すると、
既に内存しているバグを大量に検出されて大パニックになる。
特に品質重視の製品は
リリースがかなり先に延期になるからヤバい。 >>778
草
そういう場合は開発側の誰かが逃げるw そのバグが商品性質上差し支えなければスルーでいいねん
何でもかんでもなおしゃいいってワケでも無いんだぞ うちは、大量にバグがでて
納期までに直せないから、
明らかに変な動きになるもの以外、
殆ど全部実動作に合わせて仕様書修正してたなw バグと言えば、あんたらバグで人質になったことありますか?
オレ かのK国のSに捕まって3週間帰れなかった。宿は明らかに西洋のお城みたいなラブホだった。
お風呂の壁が全部透明だったのが忘れられない >>780
業務系はそういう機能を搭載しないとか機能しないようにしてるという意味で使うけど
組込系は使うなという意味なのよね、使うと落ちたり暴走したりする 組込みの方が楽だよ。
同じ工数でもコード書く量少ないし
このコード書くのにこんなに工数使うか?なんてのが
比較的どの会社のプロジェクトでもよくある。
下記に書かれてれような平均的なプログラマの生産性1人1ヶ月1000行前後すら満たないこともよくある。
https://monoist.atmarkit.co.jp/mn/spv/1109/14/news011.html いまだにコードサイズで難易度を測る奴がいるとはwwwww
今2021年だけど、君何年から来たの? だから「このコード書くのに・・・」って書いてますよ このコード書くことを「調査して書くのに、こんなに時間かかるのか?俺だったらその半分もかからないできそう」と思うことはレビューしていてよくある。40歳ぐらいのシステムよくわかってるはずのベテランなのにそんなに時間かかるのかみたいな。絶対サボってるっしょ >>786
その代わり、単体試験など各種ドキュメント作成が業務の8割だけどな >>790
すまんな
仕事中の7割くらいはウィキペディアで変な事件とか人物の話を見てるわ
情シスにばれてるって?
多分ばれてるだろうな 昔、目離した隙にWikipediaを見るか寝るSESの奴がいたけど、お前か? >>785
アップデートが楽なのはユーザーな、作る方はかなり大変だぞ アップデートといえば今居る会社、毎回バージョンアップ対応する時、
アップデートの処理のことでよく揉めるんだけど、なんだろう?話に首突っ込んでないから知らないが。
前の会社は、担当がちゃちゃっとやってしまうので
揉めることは無かったんだが。 重量が単位って、コードをプリントアウトした紙の重量ってこと? ステップ数で進捗を測るのは飛行機建造の進捗を重さで測るのと同じ(くらい愚か)だってビルが言ってた 実装モリモリ進んですごい進捗があったと思って
ステップ測ったらプラマイでたった50行だったとか
ステップ主義の顧客のときはよくあったな プロジェクト完了時にステップ数カウントしたりするけど
1行に1文字のときもざらにあるから
違和感がある 不安定な・開発中のデバイスの
コードなんかお試しコードだらけで、
完成したら減るでしょ。 いやむしろいまだにステップ換算でやってることに驚く… >>807
元のコード次第では、機能追加してるはずなのに何故か行数減る事あるよねー もっぱら組み込みをやるのではなくそれを手段として使ってる機械科の人はいないの?
機械科なのに組み込み行きそうで
機械科いじりしたいし
特許とかバンバンとってみたいんだが 参考になるかは不明だが、
18歳 機械科に入学
21歳 研究室は流体のシミュレーションをするところで、
出来合いのソフトの使いこなしではなく、解法を考えてコーディングして検証する
院も同じ
24歳 電機会社に入社
仕事は自社で使用している生産設備の制御ソフトのカスタマイズ
カスタマイズ箇所はフロントエンド側
34歳 新しい生産設備を作る仕事に変わる
バックエンド、フロントエンドの両方をやるようになる
ここまではほとんどPC、PLCの仕事。マイコンの仕事はめったになく、FPGAは仕様を切るだけ
44歳 組込み系を専業でやる部門に異動
機械は以来部門が仕上げて、それに乗せるソフトや回路を開発する部門
ソフトの開発がメインで、ソフトに影響を与えそうな回路については要望くらいは出す。
ソフトの検証用に簡単な回路を組むこともある。
特許は1件とった
出すまでが禿げ上がるほどめんどくさいんで、特許になりそうでも放置しているものが多い。
強制的に取らされたやつは測定器のプローブ。ソフトとは何の関係もないwwww
特許は日本語風の特許語や検索のめんどくささ(社名もたとえばTDKが、ティーディーケーだったり、テーデーケーだったりと
揺らぎがあり探すのがクソめんどくさい)、苦労して出しても特許になるか不明、なったとして金になるか不明、
といったものを乗り越えられないと難しいぞ >>813
わざわざありがとうございます。
今仕事中なので休憩中じっくり拝読します。 >>813
やっぱ組み込みと制御って別な感じですかね >>815
組込みの中の一部に制御がある感じ
組込みも高度なエンジニアリングを売りにする場合もあれば、価値の高さ(へぼい技術だけどこれを使うと超便利みたいなもの)を売りにする場合もあり、
前者はgoogleとかでAIエンジンを作ってるイメージ
後者はアイリスオーヤマで扇風機作ってるイメージ
どっちも儲かってるけど求められる技術は別世界のもの 特許なんて、アイデアを説明するだけで弁理士が書くもんだろ >>817
そこまで至れり尽くせりの会社なんてほぼなくね? 制御屋と組込み屋は別物だよ。
関連はめっちゃするけど
・制御屋はシステムをどう安定させて制御するかを設計する
・組込み屋はソフトをどう実装するかを設計する
の違いがある。
制御屋の設計をインプットにして組込みソフトの要求仕様書が作られる。
その仕様書をインプットにしてソフトを実装するのが組込み屋。
例えばこの要求仕様書の「4.温度制御方式」は制御屋が設計したのをインプットにして記載される。
https://www.sessame.jp/workinggroup/WorkingGroup2/POT_Specification_v7.PDF
大企業では制御屋、組込みソフト(仕様)屋、組込みソフト(設計、実装、テスト)屋と色々分業されてたりする会社が多いが、全て同じ部署/人がやる会社もある。 >>816
違うだろ
バリ組込やってる人が制御側の仕事云々が全く判ってないってのは最近知った >>818
素人が書いた特許なんて穴だらけで、特許料を捨てるようなもんだろ 別に良いと思うけど、誰も解らなくて日記状態になるぞw でもハード屋への愚痴やら恨みつらみになるとやたら饒舌になるぞ 「赤い夕陽のバラバラマン」 はほんとに名曲だと思う RX231でLチカさせようとしているんだけど、ビルドは通るけどデバッグで
エラー出て困ってるどうすればいいの?
↓エラー
"0xfff8178b の PowerON_Reset_PC()" に対して使用できるソースがありません >>829
全く動かないかな?
ソースコードが存在しないから、
ソースコード表示が出来ないだけのエラーと思える。
その場合実行コードは存在していると思われるので、
自分のmain()冒頭でブレーク張って"RUN"すればそこでブレークしないかな。 リセットからステップ実行したいなら、アセンブラモードで観るしか無いだろうさ
まあ、main()の出前までステップ実行しても得られる物は無いがな パワーオンリセットのコードって自分で書くもんじゃないの?
特にすることなければ何もしない、
void PowerON_Reset_PC( void)
{
}
みたいな空っぽの関数を用意してパワーオンリセット割込みの行き先だけでも用意しないと ビルドは通ったって書いてあるし関数自体はありそう
環境作るときに型番の設定間違えてるのでは エディタの設定でインクルードパス通してないとかだろ 難しい漢字使うのやめてください
小学生もいるんですよ 組込みあるある
・コロナ禍でも実機を使っての調査、デバッグ、テストのために出社する。
・プロパーがデバッグやテストなどに使う計測器、機材などの保管場所、借り方などを把握していない。
・IoT機器など、実機を複数台用意してのテストで、環境構築が糞面倒な場合がある。
・テスト仕様書に上記のような「実機を1000台接続し、設定してテストする」のような環境構築に長時間かかりそうなテスト項目がさりげなく紛れ込んでおり、テスト項目作成者がテスト実施者に事前に伝えてなかったりして、実施者が最初に気づかなくて日程的に詰む。
・プロパーがその1000台を準備する手段を把握していない。 プロパーの仕事は仕様書切るだけって会社があるらしいな
三@電機とか 多分コア部分は自社でやってるぞ
誰が書いても変わらなさそうなとこは丸投げ 会社に技術力がないから難しいところは外注や有能な人にやってもらって
できたのをカスタムしたりってカンタンなのだけ社内で アプリ層は外注任せ、
下周りはプロパー+外注って感じかも。 >>840
コンパイルするにもドングルが必要なので出勤することもあります。 あまり使わないやつとか高いやつはうちでは使いまわしてるわ ライセンス的にどうか知らないけど
シンクライアントっぽく運用できないの? >>852
その仕様書、ここが抜けてるんで明日の朝までに修正してください 物理工学科の3年なんだが、組込みエンジニアってあり?
Arduinoちょろっと触って楽しかったんだけど、甘すぎかな 何も甘くない
組み込み機器は君に触れられるのを待っている >>853
ソフトに合わせて仕様書も修正しておきました
くらい、やらないと次の仕事もらえないぞ 組込みは物理とか、電気、機械、制御工学やってる人の方が強いんだと言われて入ったけど、
OSでハードウェア寄りのことは隠蔽されちゃうので、
殆ど情報系(ソフト)の知識しか役に立ってない。 そりゃOS抱えてりゃ触るのはアプリばかりだから組み込みらしさは薄いよ まあドライバ書いたりしなきゃスマホアプリの開発と大差ない エンコーダ用のサブマイコンfw書いたときは回り込みノイズと取りこぼしにハマって死ぬかと思った
目に見えない外的要因に邪魔されない環境はそれはそれで幸せだと思う >>859
君の仕事はそうなんだろうけど、OSがいつもあるわけでもないし、
メカやセンサの特性に合わせて取ったデータ、与えるデータを吟味する必要もあるから
機械や電気への造詣も必要だよ >>862
大規模OSもブラックボックスが膨大にあるから見えない外的要因は数多くあるぜ
Windowsの環境依存問題とかまさにそれだけどな Windowsアプリなら、原因はOSですねで済むからなぁw 組込は何かあるとすぐにOSのせいにする癖があるのが出てきちゃってるんだな 組込はOSのせいで諦められるのかもしれないけど
オープン系?はそこで終わらせられない、動かさなきゃいけない
原因を調べ上げて個別に対処法を見つけ出さないといけないのがね
中には修正によって他に新たな影響がないか全環境で24時間テストしたり
リリース後は交代制で24時間現場に張り付いたり >>869
組込みなめてんの?
あきらめるわけないだろ >>870
じゃあ何にも邪魔されず思いのままに作れるね モータとか数十us周期で位相角演算とかしないといけないのでむしろそこらのRTOSだと遅すぎ んなシビアなタイミング管理にOSタイマーなんか使わないだろw RTOSと優先付けされたハード割り込みを混同してるとか? つうか、そう言う割り込みでもタイムラグ厳しそうな場所にはFPGAで回路組むだろ FPGAで実装するとソフト屋が手を出せないオチになりそう
そもそもそういうシビアな制御自体ソフト屋内でも手を出せる人は限られちゃうだろうけど ソフト屋が手を出せなくなってもいいだろそれが最適解になるなら
ただ数10μs程度ならよほど一つの素子で大量に制御しようとしない限りFPGAに頼らなくても良いと思うけどな
FPGAよりソフトの方が断然開発しやすいし 適正なハードを選べば余裕でしょ
いつもギリギリか性能が足りないハードを選んで
落とし前をソフトに押し付け無茶振りする阿呆かと思ってた ソフトでやればただだと思ってるやつ多い
それを組み込んでバグが出るとソフトの責任
できないと言えば、やりたくないだけだろと言われる cent osでRedHatにタダ乗りしてたやつが騒いだ件で思ったけどソフト屋のくせにソフトに金払いたがらないやつ多いしソフト軽視にどうこう言ってるやつだいたい欺瞞だろ ソフト屋が欲しくても会社が金出さないんだ
文句は会社に言え それは金出すメリットをちゃんと提示できてなかったりそもそもソフト開発費垂れ流ししてたりとか却下される根本的な原因があるんじゃない?
というか秀丸エディタゴニョゴニョして使ってるやつをちゃんと是正できない連中が何言っても無駄 ソフトの重要性が説明されないと分からない程度の企業なら
そもそもどんなメリットを説明しても受け入れることはないでしょ IT業界全体で比較したら技術力も相当低いしな
低すぎるから技術力が高い人が低い評価になるかなり変わった業界 無職な連中はプログラマー教室にでも行って一発逆転だ
中抜きされて辛いならJavaプログラマーになるのが一番
プログラミング教室のバナー広告もあるからクリックしてみれば?
Aさん
俺はJavaオンリーで700万だなぁ
Javaはここのアンチみたいに全然コーデングできない無能が現場に多いから
必然的に比較対象として優秀に見られるから楽なんだよね
こちとら一切勉強してないのに
Bさん
俺Javaメインで1400万だけどね
FInTechとかJavaの高額案件いくらもあるだろう
Javaしか出来ないという人間は少ないだろうが
Nodeもちょっといじったし今後増えるかもしれないけどバックエンドに関してはJSはまだまだぐちゃぐちゃ Javaは確かに高額案件が多くて儲かった
JSは絶対に消えることはない GitHubでなんかしようとおもったが
外人どもJSばっか使っとる >>898
別に何でもいいと思ってるけど組込オンリーの人は拘りがあるっぽい 以前までは開発用の補助ツールってc#とwinformで作ることが多かったけど最近はjsでwebアプリとして組んでurlをチームにばら撒くほうが楽ってことになった
組み込みマンもjsから逃げられない流れ来てるわ 組込みに戻りたいよ
今はみずほの末端PG
githubにマイコンprj投稿オナニー 開発用の補助ツールって何を作ってるの?
CIでの自動ビルド、自動テストとか?
通信を行う製品だと
サーバや対向機器を模擬したアプリとか? デバイスのステータスをモニタリングしたりとかは社内に汎用的なツールがあるんだけどそれをプロジェクト毎にforkしてカスタマイズしてるな
でもよくありがちな通信系のツールはjavascriptには起き替えできないし配布コスト考えてもc#でやるほうがよくないか 通信系ツールは画面がいらなきゃpythonかphpで、
フロントが必要なら+JSでささっと作っちゃうな
ちょっと複雑なのとか配布用のはC#、VCなど データベースにアクセスする必要があるとかクロスプラットフォームなGUIが必要とか以外にwebで作る必要ある?
デスクトップアプリ作るなりpythonでスクリプト書く方が色々捗りそう ブラウザだから動的に画面を作りやすい点と、画面スクロールができる点
表示や設定項目が多くても汎用的に作りやすい >>909
その辺の無関係な暇そうなやつに散発的に仕事を頼むときに楽ができる
たいてい開発中にいじる用にしか使わないけど
あまりに出来が良ければ磨いて本採用することもある >>912
APIだけ用意して、あとは適当になんとかしてって超丸投げですわ スイッチの短押しと長押しの判定の区別の共存が解らんわ キーを離したかどうかを取得できないFM-7が思い浮かんだ 懐かしいがYAMAUCHIコマンドはFM8
FM7は任意の8バイト FMシリーズのサブ・システムは今で言うGPUみたいなもんだから表示が爆速だった。 申し込み期間も例年1ヶ月くらいあるのに今年は約1週間
しかも予告なく突然申し込み開始する鬼畜さ 半年後あたりから組み込みの仕事なくなると言われたから別の業界に行く準備だ >>926
良いと思う
この業界は去る者は追わず、来るものは許さずの精神だし 組み込みなんて10年以上前から無くなる言われてるよ 仕事がなくなるってそう言う意味?
てっきり今の職場で組込みの仕事なくなるけど組込みやりたいから転職するってことかと思ってたわ C++はCの上位互換だから混在利用が容易なのでCの既存コードが残るプロジェクトでも受け入れ易かった
Rustは筋はいいが0ベースで始まるプロジェクトじゃ無いと導入難しいだろうね 無職な連中はプログラマー教室にでも行って一発逆転だ
中抜きされて辛いならJavaプログラマーになるのが一番
プログラミング教室のバナー広告もあるからクリックしてみれば?
Aさん
俺はJavaオンリーで700万だなぁ
Javaはここのアンチみたいに全然コーデングできない無能が現場に多いから
必然的に比較対象として優秀に見られるから楽なんだよね
こちとら一切勉強してないのに
Bさん
俺Javaメインで1400万だけどね
FInTechとかJavaの高額案件いくらもあるだろう
Javaしか出来ないという人間は少ないだろうが
Nodeもちょっといじったし今後増えるかもしれないけどバックエンドに関してはJSはまだまだぐちゃぐちゃ 組込みばかりやってるから
webなんかの求人見て
Node.js、Vue.jsとかでてくると
なんのこっちゃ?ってなる。
流行りのAWSすらよくわからない。
組込みでAmazon FreeRTOSとかあるけど、使ってるプロジェクトを周りで見たことない。 俺はずっとwebしかやってないから組込みやりたいんだけどなんの勉強したらいいかわからん
普段はGoとk8sでgrpcサーバ開発してる awsくらい知っとけよと言いたいところだが俺もec2とrdsくらいしか触ったことない
iot絡みでデバイス用のスマホアプリ開発がポロポロ出てきてるがそのへんは外注に投げてるっぽいからとくに余波もない >>942
Webから組込来たけど仕事はたいしたことないが、この界隈の人種がヤバい 固定小数点演算って2進数で計算しますが、1.5を15のように桁上げして計算するのと違いがよくわかりません。
メモリの節約がメリット? >>946
マイコンなので、整数型で計算したいのです。 1命令を削る事に心血を注ぐ必要がなければいいんじゃないの? 固定小数点の意味が分かってないならおとなしく浮動小数点使えよと思う >>945
まず、浮動と固定を理解できてるのか?本当に固定小数点か?は置いといて、
小数点以下1桁精度で良い値なんかは
int型で計算できるように10倍値で扱ったりする。
そもそも浮動小数点命令あるいは演算ユニットのないマイコンもあるし、
あっても整数演算なら1〜数クロックのところが浮動小数点演算だと数十クロックかかったりするし、
ライブラリ提供だったりすると
演算時間のみならずサイズも馬鹿にならない。 >>950
ありがとうございます。
今使っているマイコンはFPUがないので、floatでの計算は避けたいです。
小数点以下の桁数が増えると10進数の小数点計算は遅くなりますか?(1000倍値とか)
例えば、8bitマイコンで4byteの整数型を使って1000倍値計算するのは数サイクルかかる程度だと思うのですけれども。 そんなにシビアなものなら余計に無理だろ
固定小数点の処理も意味が分かってないとそもそも最適化出来ないだろうし
普通に浮動小数点で計算したほうが何も考えずに済むからバクも少なくなるだろうし
素人に固定小数点は無理と思う >>951
何倍値で扱うかは仕様の問題なので処理時間は関係ない。
例えば整数の123456を、12345.6と理解するか123.456と理解するかの話なので。
4バイト整数演算についてはマイコンに依存。
8ビットマイコンでも4バイト整数演算があるものなら話は簡単だが、
ないものだと4バイト整数演算関数を自作するか、あればライブラリを使う必要がある。 >>953
そうですよね。処理速度には影響ないですよね。
だとすると、やはり固定小数点演算の2進数での計算のメリットがよくわからなくて。
ここの板の先輩方ならご存じかと思って書き込みました。 >>954
メリットは知らんが例えば通信相手がその表現の値を期待しているのであればそれでやるしかあるまい。 固定小数点演算と浮動小数点演算を比べた時のメリットデメリットを聞いているのかと思ったけど、どうやらそう言う話ではない? 固定小数点数を扱うときに二進化十進数と二進数の間で速度差があるかどうかって事? 2進数での計算ってなんの事言ってるのかw
コンピュータなのだから全てが2進数だがw
固定小数点のメリットって32ビット整数で精度が足りるなら足す引くはそのまま(もちろんオーバーフローは考慮しなきゃいけないが)いけるし
掛け算は32ビット×32ビットなら当然答えは64ビットなのでその辺も処理出来るなら最速である
欠点は精度の問題だけどその辺は物によるとしか
しかし32ビットを4バイトという言い方は初心者かと思う 小数点計算を1.5→15として計算するのと、固定小数点演算でビットシフトして計算することの違いがありますか?ってことでしょ? >>固定小数点演算って2進数で計算しますが、
この部分から意図が分からん。 例えば2ビットシフトの演算だったら、2の-1乗と2の-2乗までの精度しかないから、そこのことを言ってるんだと思うよ。
で、わざわざやる必要があるのかと。(量子化誤差も含めて) ああ、まだ浮動小数点演算ユニットが高価だった頃の解決策だからなぁ
今の時代しか知らない人には意味不明だろうなぁ
でもいまだに浮動小数点演算ユニットが無いCPUでは精度はあまり無くていい速度優先な演算には有効だからなぁ >>962
50年前にタイムリープした際に役に立つので教えてください! 昔は浮動小数点の演算をCPUが直接サポートしてなかったというだけの話
C言語でfloatはあったので計算出来ない訳ではないが遅かった
(必ずfloatがサポートされている訳ではないが)
厳密に言えば浮動小数点演算はFPUとかコプロとかCPUとは別のものでサポートされていたりしていたが段々とCPUに統合されてきた ここって制御系の話題はNGなの
ちなみに基幹システムの制御系です 基幹システムと制御系という全く繋がらないワードをセットで持ってこられましても >>968
そうそう
>>969
ライフライン系だから基幹システム用の制御プログラミング書いてるんだが
COBOLだけがメインフレームに乗ってるわけじゃないんだぞ 制御系って制御対象(モータとかヒータ)で以って語るのがほとんどで、組み込まれてるシステムから語る人初めて見た 横から的外れかも知らんけど、制御って電気配線のことじゃなくて
リレー制御を全般的に制御と言うんでは?
だから中央制御室から遠隔で電力経路の制御とか電磁弁操作とか
形はどうあれ制御に関わってりゃ制御系な気が PLCをPCに繋ぐためのデバイスドライバは書いたことがあるが、PLC自体のこともラダーのことも全然知らねぇわw 某PLCメーカーに行ってたのでラダーもSTも書けるけどPLCプログラミングしてるエンジニアは意外と組み込みエンジニアと重ならないんだよね
メーカーのプロパーでもCは書けてもラダーは書けないって人がわりといた
デバイス割付とかやってることはほぼ組み込みと同じなんだけどね ラダーは現場よりだから、工場にいる連中は割とできる 誰でもメンテナンスできるように
絵でプログラム書けるわけだからね でも未だにソース管理がまともにできないし触ってると色々不満が多い xmlでラダー管理して尚且つベンダ互換性持たせるみたいな規格作ってなかったっけ
いつ実用化されるんか知らんけど ソフト屋なら自分用のツールをさっさと作って
不満点を緩和しちゃうもんだろうけどな PLCやラダー図はシーケンス制御で
制御工学とはまた違うわな。
制御工学は普通にC言語でもプログラム書くわな。
PID制御とかよくあるやん。
ロケットなんかだとカルマンフィルタとか。 アンフェノールコネクターは納期未定
モノタローからキャンセルきた 半導体不足の話なら随分と前から出し
その逼迫度合いが上がってきたですら、もうだいぶ経つ気がするけど
なにが今更疑問に? 半導体に限らず各種部品類も円安で買い負けしてるそうな。 メーカー勤務の組込み屋になるか、
IT企業勤務の組込み屋になるか、
どちらがいいかと聞かれたらIT企業と答える。
メーカーは年を取るとソフト開発と無関係の部署に異動させられる危険性があるから。 組込み屋が働けるIT企業ってあるの?受託にならない? 請負か準委任、派遣だけど、
IT企業は9割がたITに関連した部署しかないから
なんかこれまでやってた仕事と全く関係のない部署に
異動させられたというような虐めが少ないと思われる
工場に飛ばされるとかもまず無い 受託か派遣じゃないかな
うちは組込みに強い派遣会社から派遣さん来てもらってるよ 見てきた限り、数千人を越える規模のメーカーにはあまりないけど
数百人程度の規模のメーカーはドカタと見紛う柄の悪い人種がやけに多い印象 屋台でたこ焼き焼いてた人とか元美容師とか元トラック運転士のプログラマーを某銀行の案件でみたことあるわ
意外なことにスキルは悪くなかったよ
話しがおもしろかったわ 1人でも珍しいのに3人で、しかも全て同じ銀行の案件とか 組込みの案件では他業種からの人はあまり居ないな。
たまにテスターで他業種から来た人は見かけたことはあるけど。
大概、大学・大学院や高専、専門学校の新卒の時から
プログラマーなのが多い。 JAVAパーは質がひどいね
高卒ヤンキーDQNって感じで風俗とバイクとスマホゲーとパチンコの話ししかしてなかった >>994
成績などの優劣ではなく人を選ぶ気がしている。 無能でもヨイショが上手い人が好まれて出世したり
昭和が残る業界と体育会系ならではだな このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 230日 9時間 6分 58秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。