タグ

組み込みに関するvccのブックマーク (134)

  • 茨の道が広がるMIPS/動き出したWi-Fi 6E/Armの物量戦

    茨の道が広がるMIPS/動き出したWi-Fi 6E/Armの物量戦:大原雄介のエレ・組み込みプレイバック(1/3 ページ) エレクトロニクス/組み込み業界の動向をウオッチする連載。今回は、2020年4月の業界動向の振り返りとして、MIPSビジネスやWi-Fi 6Eの動き、Armのスタートアップ向けFlexible Accessなど、小ネタ3をお届けする。 全世界的にロックダウンが行われていたこともあり、エレ・組み込み業界では2020年4月もあまり活発な動きはなかったため、小ネタをいくつかご紹介したい。 MIPS(というかWave Computing)とImagination 2019年12月の記事に、Wave Computingそのものがかなり厳しいのでは? と書いたが、案の定であった。こちらの記事ではまだ確定していなかったが、米国時間の2020年4月28日にPR Newswire経由で

    茨の道が広がるMIPS/動き出したWi-Fi 6E/Armの物量戦
  • ADALM2000(2) <開けてみた> - Yoshiのブログ

  • リアルタイムOSとは何か、ここ最近10年の動向を概説する

    リアルタイムOSとは何か、ここ最近10年の動向を概説する:リアルタイムOS列伝(1)(1/3 ページ) IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する連載。第1回は、リアルタイムOSのここ最近10年の動向について概説する。 リアルタイムOS(RTOS)は、組み込み向けシステムにおいて、既に欠くことができない重要なコンポーネントになっている、と言うと「えー」という声も聞こえそうだが、事実そういうポジションにある。 RTOSとは何か、という話は3年ほど前にもTechFactoryで一度書かせていただいているが、要するに組み込み向けに最適化した(特にリアルタイム応答性能を重視した)軽量なOSである。 先述の記事では、以下の7つの特徴をご紹介した。 複数スレッド(タスク)の並行動作が可能 最

    リアルタイムOSとは何か、ここ最近10年の動向を概説する
  • IoT設計製造のテンプレ・ガントチャート~Shiftall流、設計製造のポイントを添えて | Shiftall blog

    Shiftall代表の岩佐です。 ESP32やRaspberry piを使って1品もののちょっとした試作機を作ったことがあるという人は増えてきましたが、いわゆる『量産品』を作った事がある人はそう多くはありません。また、大手企業に勤めていて量産品に関わったことがある人であっても、電気・メカ・ソフト・部品調達・品質評価・デリバリーなど開発の全プロセスを俯瞰して見た経験のある人は稀でしょう。 そこで年を締めくくるShiftallブログネタとして、何十品目という家電・IoT製品のスケジュールチャートを引いてきた立場で、製品開発全体のガントチャートをどう引くか?をご紹介したいと思います。IoTの肝となるスマートフォンアプリ&サーバサイドのガントチャートについては世に山ほど解説記事があるのでここでは省略します。 まず、全体工程のパート分けを行います。 電気 機構 組み込みSW App/Server(

    IoT設計製造のテンプレ・ガントチャート~Shiftall流、設計製造のポイントを添えて | Shiftall blog
  • 「Linux搭載PC」を名刺にしてしまった猛者が登場

    個性的な名刺作りには多くの人が知恵を絞っていて、「USBメモリとして使用可能な名刺」を作った人もいます。そんな中、CPUやメモリなど、PCに必要な最低限のコンポーネントを備えた名刺が登場しました。 My Business Card Runs Linux • &> /dev/null https://www.thirtythreeforty.net/posts/2019/12/my-business-card-runs-linux/ Linux搭載PCの名刺を作ったのは、組み込みシステムエンジニアのGeorge Hilliard氏です。表面には、プロフィールと共に「This card runs Linux!(このカードはLinuxで動作します)」と記載されています。また、名刺の下部にはICチップが設置されており、名刺自体が1枚の基板として使われているのが分かります。 裏面はこんな感じ。カード

    「Linux搭載PC」を名刺にしてしまった猛者が登場
  • Rustの非同期プログラミングをマスターする - OPTiM TECH BLOG

    こんにちは、R&Dチームの齋藤(@aznhe21)です。 さあみなさん、ついにこの時がやってまいりました。 日2019/11/8にリリースされたRust 1.39により、あらゆる環境で最高速な非同期プログラミングが可能になりました。 新たな時代に乗り遅れないよう、今のうちにRustでの非同期プログラミングをマスターしておきましょう。 なお、この記事は、先日開催したOPTiM TECH BLOG Meetupの内容を大幅に加筆修正した上でエントリに仕上げたものです。 まず最初に伝えたいこと 非同期の歴史 Rustの非同期プログラミングの歴史 Rust 1.0以前 Rust 1.0 〜Rust 1.3 Rust 1.2あたり Rust 1.11あたり Rust 1.26あたり Rust 1.36 Rust 1.39 Rustの非同期プログラミングの特徴 ゼロコスト抽象化 プラットフォーム非依

    Rustの非同期プログラミングをマスターする - OPTiM TECH BLOG
  • IAR DevCon Tokyo 2019から見えたRISC-Vの現状と今後

    現状のRISC-VベースMCUと将来 さて、IAR DevConでは実際にそのRISC-V(今回はIAR DevCon Evaluation boardではなく、SiFiveのHiFive 1を利用)を使ってのハンズオンも開催されたので、その内容を元にちょっとMCUとしての現状のRISC-Vをご紹介したいと思う。 そもそもRISC-V向けのソフトウェア開発環境としては、GitHubで色々公開されているほか、Andes Technologyが今年1月末にAndeSightというRISC-V向けIDEを無償公開するなど選択肢はいくつかあり、IAR EWRISC-Vは「初の商用開発環境」という扱いになるが、商用というだけにきちんとサポートが整った環境が提供される。以下、RISC-V一般の話とEWRISC-Vの話が混在するが、ちょっとまとめてご紹介したい。 まずは割り込み回り。現状RISC-Vその

    IAR DevCon Tokyo 2019から見えたRISC-Vの現状と今後
    vcc
    vcc 2019/11/06
    “現状RISC-Vそのものは割り込みに関して割と寛容というか、どうにでもなる仕様で、実際はPLICがその管理を行う形になるが、これが標準化されているという訳ではない”
  • 自作OSとかLinuxカーネルについて役立った本 - Qiita

    はじめに なんらかの理由によってOSやOSカーネルに興味を持つ人は多々います。しかし、その次のステップとしてどんなを読めばいいんだろうと思っている人はこれまたいっぱいいます。そこで、長年Linuxカーネルにかかわってきた筆者がこれまでに読んでよかったと思うものについてここの列挙しました。紹介するのはだけであって、記事は省いています。もう一点、筆者が書いたものは省いています。 OSそのものに興味を持った人は、その後に興味の方向が次のような二つに分かれることが多いと筆者は考えています。 オレオレOSを作りたい 既存のOSを改造したい この仮説をもとに、それぞれについて筆者がかつて真面目に読んだの中から「自作OS」および「Linuxカーネル」というキーワードでよかったものを挙げておきます。Linux以外の既存OSについては語れるほどの知識はないので書いてません。 筆者について の良し悪し

    自作OSとかLinuxカーネルについて役立った本 - Qiita
  • Microsoftに買収されたExpress Logicとは

    Microsoftに買収されたExpress Logicとは:大原雄介のエレ・組み込みプレイバック(1/2 ページ) エレクトロニクス/組み込み業界の動向をウオッチする連載。今回は、2019年4月の業界動向の振り返りとして、Microsoftに買収されたExpress Logicの話を紹介する。

    Microsoftに買収されたExpress Logicとは
  • マイコンでtan(355/226)の計算 - 滴了庵日録

    tan(355/226)の計算は関数電卓の正確さを試すベンチマークによく使われるらしいです。というのも、355/226はπ/2に極めて近い有理数であり、π/2近傍でtanは無限大に発散するからです。 下表のように両者は10進数で7桁まで一致しています。 π/2 1.5707963267948966192313216916398 355/226 1.5707964601769911504424778761062 tan(355/226) の真の値は、-7497258.185...ですが、この近傍でラジアン値の有効数字10桁目が1ズレるだけでtanの値は有効数字3桁目からズレてきます。ちなみに、Androidの関数電卓アプリの定番といえるRealCalcは正しい10桁の値を出しますが、市販の関数電卓では4桁〜7桁くらいの正確さになるのものが多いようです。 今回は、いろいろなマイコン/開発環境で

    マイコンでtan(355/226)の計算 - 滴了庵日録
  • ARM Cortex-M0でもラクラク使えるNT-Shellよりもコンパクトな端末入出力ミドルウェアMicroShellライブラリを開発しました (NXP LPC824用サンプルプロジェクト付き)

    あらまし 昨年のこと、NXP LPC824を使ったサウンドモジュールMicroSoundModuleを開発していました。このサウンドモジュールは、コマンドを受け取って色々な再生を行うもので、当初はこのコマンド処理部分の実装にNT-Shellを用いる計画でした。しかし、最小10KBのROM、最小1KBのRAMを要求するNT-ShellはNXP LPC824の小さなリソースに対して厳しいものです。仮に入ったとしてもアプリケーション側に大きな制約を課すことになります。 よくよく見まわしてみると、様々な面白そうなマイクロコントローラがNXP LPC824と同クラスで存在します。ARM Cortex-M0のような小さなマイコンを使ったシステムにおいて、NT-Shellほどの機能は要らない、でも、きっちり入力は出来るようにしたい、といったニーズはありそうです。 そこで、NXP LPC824のような小さ

    ARM Cortex-M0でもラクラク使えるNT-Shellよりもコンパクトな端末入出力ミドルウェアMicroShellライブラリを開発しました (NXP LPC824用サンプルプロジェクト付き)
  • 微分動作の問題点と不完全微分 - とりあえずフィードバック制御

    時間遅れしかないプロセスにとって、未来を予測し位相を進めてくれる微分動作は良心である。単にノイズに弱いからと言って、微分時間を小さく設定したり、PI制御しか使わないのはもったいないです。今回は、PID制御をより実践的に使うための要素技術の一つである不完全微分について解説します。 キーワード:PID制御、微分動作、不完全微分 はじめに PID制御における微分動作は、温度制御のような応答が遅いプロセスの改善に役立つ。一方で、流量や圧力関係の制御では、ポンプや弁の動作に起因した脈動や乱流で制御量が振動的になってしまうことから、微分動作がそれを増幅し、過大な操作量で制御系を不安定にしたりする。そればかりか、過大なアクチュエータの動作は設備の劣化にもつながる。他にも良くない影響として、非常に大きくなった操作量が有効な操作範囲を超えたり、パルス状になった操作量ではアクチュエータがそもそも動作できなかっ

    微分動作の問題点と不完全微分 - とりあえずフィードバック制御
  • RaspberryPiで「alpinelinux」 - 144Labグループ開発者ブログ

    144Labの入江田です。 最近、RaspberriPiを筆頭にLinuxが動作可能な安価なデバイスが増えてきました。 しかし、LinuxディストリをSDカード上でちゃんと運用するためには それなりの調整が必要です。 何も考えずにPCディストリをSDカードに入れた場合、 毎日のようにパッケージ更新をチェックし システムログをSDカードに細かく頻繁に書き込み続けます。 設定によりますが半年~1年ほど経てば 細かい高頻度の書き込みと断片化、寿命による性能劣化が急速に進みます。 運用寿命を数年以上に引き上げるためにはとにかくSDカードへの書き込み頻度を減らすことが重要です。 そこで組み込み用途向けディストリというものがあります。 もちろん「Raspbian」もその一つです。 超有名どころとしてはルーター用ディストリとして発展した「OpenWRT」がありますが、 ここでは「alpinelinux

    RaspberryPiで「alpinelinux」 - 144Labグループ開発者ブログ
  • TinyGoで始める組み込みプログラミング - スイッチサイエンス 開発者ブログ

    144labの入江田です。 今回TinyGoという素敵なプロダクトを試してみました。 TinyGoとは TinyGoGo言語の組み込み向けのサブセット版。 Go言語はPOSIX-OSに対する機能依存が大きく、リッチなランタイムを持っています。その為、来はOSを持たない組み込み用途には不向きでした。 TinyGoはPOSIX-OSに依存する機能を簡易的な実装で代用しつつLLVM(コンパイラを作る為のフレームワーク)を使って組み込み向けアーキテクチャをサポートするGo言語のコンパイラです。 つまりサポートするCPUアーキテクチャはLLVMがサポートするものを前提にしています。 リポジトリ https://github.com/tinygo-org/tinygo ドキュメント https://tinygo.org/ サポートアーキテクチャ ARMのCortex-M0系 WebAsse

    TinyGoで始める組み込みプログラミング - スイッチサイエンス 開発者ブログ
  • FPGAのソフトコアCPU (MicroBlaze)とFreeRTOSでシリアル通信ソフトをつくる - Qiita

    はじめに 記事ではXilinx社のソフトコアCPUであるMicroBlazeでFreeRTOSを動作させ、PCのターミナルソフトとFPGAとの間でシリアル通信してI2CやSPI、UARTのペリフェラル制御を行います。 ※因みに私はRTOSを触るのは初めてなので、突っ込みどころがありましたらぜひご指南ください。。 設計の背景 FPGAの利用価値は 汎用品では不可能な柔軟な回路構成(静的にも動的にも) プリミティブな回路による圧倒的なリアルタイム性能 の2点に集約されると言えます。 例えば、数多くのセンサとアクチュエータをぶら下げて、流れてくるデータを監視しながらリアルタイムにデバイス制御したい場合など。 最近ではARMコアと論理回路部がワンパッケージになったFPGAも一般的になってきましたが、ARM上のLinuxにさせるまでもない瑣末な処理で、なおかつリアルタイム性能も重視したい時に便利な

    FPGAのソフトコアCPU (MicroBlaze)とFreeRTOSでシリアル通信ソフトをつくる - Qiita
  • mruby/cで始めるオリジナルIoTデバイス作り

    はじめに こんにちは、kishimaと申します。 mruby/c(えむるびーすらっしゅしー)という言語を皆さんは御存知でしょうか? この記事では、mrubyから派生して生まれたmruby/cを使ったIoTっぽい電子工作について説明していきたいと思います。 mruby/cでIoT 筆者は仕事で馴染み深かったのもあり、2017年後半あたりから電子工作格的に趣味として始めました。 機器の制御のためにマイコンにソフトを書き込むわけですが、プログラミング言語は基的にC言語を用いてきました。 しかしちょっとした機能の実装に、いつもC言語を使うのも面倒と感じる場面も多く、Rubyのようなスクリプト言語を使えたらいいなとずっと思ってきました。 最近では、mrubyという選択肢もあるわけなのですが、RAMが数百KB程度のマイコンで動かすことを考えると、mrubyは動かせないということはないのですが、あ

  • Visual Studio Code で ARM Cortex の開発環境を作る - くにゅくにゅの雑記帳

    Visual Studio Code で ARM Cortex の開発環境を構築してみたので,備忘録代わりに構築手順を書いておきます。 Visual Studio Code そのものは統合開発環境ではなく,あくまで高機能なコードエディタという位置づけの製品ですが,アドオンを入れることにより,コーディングだけでなく,プロジェクトのビルドや,ターゲットMCUへのダウンロード,ターゲット上で実行しながらのデバッグを,エディタ上で行うことができるようになります。IntelliSense によるコード補完もきちんと動作し,なかなか快適です。一方,大きな欠点として,2018年5月時点では C/C++ のリファクタリング機能が完全に欠落しています。このため,変数名の一括変更といった,ほかのコードエディタならば当たり前にできるようなことができなかったりもします。それを差し置いても,Eclipseベースの環

    Visual Studio Code で ARM Cortex の開発環境を作る - くにゅくにゅの雑記帳
  • 新しいボードへMicroPythonを対応させる方法をざっくり解説

    ★この記事はMicroPython Advent Calendar 2018に参加しています。★ NUCLEO-L432KCは、STM32L4シリーズのMCUを使った、Arduino Nanoサイズの小型ボードです。 写真のように、他のNUCLEOボードに比べて非常に小さく、省電力ですが、フラッシュは256KB、RAMは48KB+パリティチェック付き16KBと、そこそこのスペックです。 秋月電子の店頭などでは見かけないのですが、RSやdigi-keyなどの通販では1500円くらいで買えます。 MicroPythonのフォーラムの以下のスレッドで話題になっていたのですが、まだMicroPythonが載せられていなかったので載せてみました。 [STM32L432 – NUCLEO 32] – MicroPython Forum 具体的にはどういう作業になるのかを紹介してみたいと思います。 全体

    新しいボードへMicroPythonを対応させる方法をざっくり解説
  • 目からウロコ!Node-REDのアンチパターン10選 - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationWhat you can do with signing up

    目からウロコ!Node-REDのアンチパターン10選 - Qiita
  • Raspberry Pi ZeroでIoTプラレールを作ってみよう~プラレールに基板を実装する

    第1回 650円で買えるマイコンボード「Raspberry Pi Zero」でIoTをはじめよう! ~環境構築とLチカのレシピでもご紹介した通り、筆者はIoTプラレールを作ることを目標にRaspberry Pi Zeroと電子工作を始めました。 記事は、これまで試行錯誤してきたレシピの集大成となります。なお、このWebアプリは第4回「Raspberry Pi Zero WとAzureで、Webから操作できるIoTクリスマスツリーを作ってみよう」で紹介したプログラムの応用編です。 IoTプラレールを制御する仕組みについて、大まかには以下の流れになります。 ブラウザ上でWebアプリの【発車/停車】ボタンを押す(MQTT Publisher) MQTT Brokerでメッセージを受け取る Raspberry Pi Zero Wでメッセージを受け取り(MQTT Subscriber)、モーターの

    Raspberry Pi ZeroでIoTプラレールを作ってみよう~プラレールに基板を実装する