目次

プロジェクト, リアルタイムOS, 回路, ツール

+
その他

電源 | 電子回路

電子回路において、必要な電源知識

フレームワーク, nodec
nodec framework(プラットフォーム開発のためのフレームワーク) | Welcome!

nodecは、ゲームエンジンなどのプラットフォームを新しく作成するためのフレームワークです。

アプリ開発のためのプラットフォームは、これまでたくさんありました。たとえば、GUIアプリケーション作成のプラットフォームにはQt、ゲーム開発のためのプラットフォームにはUnityがあります。ですが、これらのプラットフォームは別々で開発されており、そのうえで動くアプリコードもまた、まったく違った様相をしています。

nodecフレームワークを利用することで、新しいプラットフォームを効率的に構築できます。nodecフレームワークは、異なるプラットフォーム間で共通に使える機能を提供します。また、アプリへのインターフェイスはあらかじめ定義されているので、設計の再利用が可能です。

アプリコードの実装も、nodecフレームワークで効率化することが可能です。プラットフォームの上に、機能を抽象化したレイヤー(modules)があり、アプリ層はこのレイヤーを通してプラットフォームの機能を利用します。プラットフォームが異なっても、アプリでの実装の仕方は同じです。

Arduino, OS
Arduino上で走るOSの作り方 | Arduino

OSは日常のあらゆる場所で目にします. パソコンには必ずと言っていいほどOSが走っており, 携帯, ゲーム機などにもOSが走っております. このような普段よく使うOSですが, そのOSの仕組みを分かっていても, 実際どのように作るのかはよく知られておらず気になります.

このページでは, 実際にArduinoで動くOSを作成することで, OSの理解を深めます. 使用するプログラミング言語はC言語です. (作成といいましても, すでに在りますFreeRTOSから必要な機能を抜き出し, Arduinoで動くようにしました.) なお, 今回扱うOSは汎用OSではなくリアルタイムOS(RTOS)と呼ばれるものです. 汎用OSとは, すべてのタスクに等しく優先度が与えられますが, RTOSではタスクごとに優先度を設定できます.

話の進め方ですが, 今回のOS製作では実装に重きを置くため, コードを中心に話を進めていきます. 各コードごとに簡単な説明を行い, その中で特に重要な部分―OSの仕組みに深くかかわる部分―もしくはさらに詳しい説明については別ページで行います. これら別ページ―詳細ページ―は子コンテンツである"仕組み"にまとめられています.

話の流れは次のとおりです.

  • RTOSとは
  • 目標と使い方
  • 準備
  • ファイル構成
  • スクリプト
  • ボードの設定
  • 仕組み

対応状況

  • Arduino UNO
  • Arduino Mega

動作確認済み環境

  • Arduino IDE 1.8.10
  • Arduino AVR Boards 1.8.1
製作, ラダー回路, DA変換
コントローラー製作 | コントローラー

コントローラ製作に関することについて説明します. 説明の項目は以下のとおりです.

  • 部品入手
  • 製作
  • 説明
  • 参考文献
参考書
参考書 | 電子回路

回路製作で役立った本たち

発振回路, 数式
正電圧矩形波発振回路 | レシピ集

OPアンプ(オペアンプ)を使ったCR型矩形波(方形波)発振回路です. 抵抗の値で発振周波数が変化します. グランドと電源電圧間で発振し, マイコンなどのデジタルICに最適です.

ライブラリ, PHP, デバッガ, ダウンロード
Debugツール | PHPライブラリ

PHPでWebアプリケーションを作るとき, 必ずデバックを行う必要があります. Debugの方法として, "echo"関数などを使用したプログラムの状態を画面に出力するなどがありますが, ファイルとしてそのようなデバック情報が保存されないのが難点です.

このDebugツールは以下の目的で作られました.

  • 簡単にDebugできるように
  • 外部ファイルとしてデバック情報を保存
Web
Webツール | Welcome!

Web(ブラウザ)上で動く各種ツール

TranslatePreprocessor: 段落を保持するグーグル翻訳ペースト前処理機 | Webツール

英語論文PDF内の英文をグーグル翻訳にペーストする際, 同じ段落にもかかわらず改行が含まれており, 正しく翻訳できません.

これまで多くの方法が提案されています[1][2][3]が, 基本的に改行を削除しているだけで, 複数の段落が一つの段落になる問題があります.

そこで, 段落を保持したまま改行を取り除く前処理機を紹介します. 入力した文章を行ごとに処理し, 行文字が他と比べて少ない場合は, 改行をそのままにします.

英語PDFからの文字列を対象としていますが, 処理としては, 文字数と改行コードを見ているだけなので, 日本語などほかの言語にも対応しています.

QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

アプリ
TranslatePreprocessor: 段落を保持するグーグル翻訳ペースト前処理機 | Webツール

英語論文PDF内の英文をグーグル翻訳にペーストする際, 同じ段落にもかかわらず改行が含まれており, 正しく翻訳できません.

これまで多くの方法が提案されています[1][2][3]が, 基本的に改行を削除しているだけで, 複数の段落が一つの段落になる問題があります.

そこで, 段落を保持したまま改行を取り除く前処理機を紹介します. 入力した文章を行ごとに処理し, 行文字が他と比べて少ない場合は, 改行をそのままにします.

英語PDFからの文字列を対象としていますが, 処理としては, 文字数と改行コードを見ているだけなので, 日本語などほかの言語にも対応しています.

QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

ウェブアプリ, QRコード, PWA
QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

「https://contentsviewer.work/Master/:tagmap/プロジェクト,リアルタイムOS,回路,ツール?layer=ja」から取得