誤り検出(チェックサム、パリティ、CRC)

CRC (Cyclic Redundancy Check)(巡回冗長検査)

誤り検出符号の一種。割り算に似た計算をして得た余りをチェック用の符号として用いる。この計算は回路で実装しやすい。パリティや単純な加算によるチェックサムよりも検出精度が高い。

 

パリティチェック

誤り検出符号の一種。パリティビットを含むデータの合計が奇数(偶数)になるようにパリティビットを設定する。もし奇数(偶数)でなかったらそのデータは誤りを含むということになる。

 

チェックサム

誤り検出符号の一種。チェックサムの値をどうするかはいろいろある。データの総和をチェックサムの値にすることや、「対象となるパケットに対し、16ビットごとの 1 の補数和を取り、さらにそれの 1 の補数を取る」というものも。

 

1の補数、2の補数

2の補数を理解する (1) - とあるソフトウェア開発者のブログ

ある数Aに対する1の補数とは、次のような条件を満たす数のことです。「『A』の2進表現と『Aの1の補数』の2進表現を加算すると、計算結果の全てのビットが1になる。」

例えば、Aの2進表現(8ビット)が01011100だった場合、Aの1の補数の2進表現は、10100011となります。(01011100 + 10100011 = 11111111) 例を見ればすぐにわかるように、Aの1の補数は、Aの2進表現ビット反転させたものになります。

 

ある数Aに対する2の補数とは、次のような条件を満たす数のことです。「『A』の2進表現と『Aの2の補数』の2進表現を加算すると、計算結果は2nになる。(nはAのビット数)」

例えば、Aの2進表現(8ビット)が01011100だった場合、Aの2の補数の2進表現は、10100100となります。(01011100 + 10100100 = 100000000 = 28) 定義からすぐにわかるように、Aの2の補数は、Aの1の補数に1を足した値となります。1の補数はビット反転で計算できるため、2の補数は「ビット反転+1」で計算できることになります。

 

 

 

 

STM32

●CMSIS (The ARM® Cortex® Microcontroller Software Interface Standard )

ARM社が策定?しているARMコアマイコン同士でソフトウェア資産を流用しやすいようにするしくみ。レジスタの定義がなされている

●STM32F4xx_StdPeriph_Driver (STD)

STMicroelectoronics社提供のライブラリ群。STM社のCortex-M各品種ごとに用意されている。ADCやDMA等ペリフェラル群にアクセスするための関数群が用意されている。

CMSISより上位。

●HAL(Hardware Abstraction Layer)

もとはStandard Periph Driverが提供されていたが、HALが提供されるようになった。今後はHALらしい。

●CubeMX

CubeMXとは、STMicroが提供するコードジェネレーターです。
CPUやボードの種類を選択して、各種GPIOやPeripheral Moduleの設定などを視覚的に行えます。

 

---------------

フォルダ構成

HAL_Driver

Utilities     BSP_**という関数。

 

商標登録について

文字商標、記号商標、図形商標、、、

文字商標、図形商標、記号商標、立体商標、結合商標の違い | 商標出願.net

→ロゴ商標は「ロゴ商標は、商標法で定義されているわけでは
ありませんが、一般的には上記の図形商標、
記号商標、文字と図形が結合した商標、文字と
記号が結合した商標などの総称」

記号商標は丸とか▲とかの図形でできた商標。図形はもっと複雑な図形の商標。文字商標でも標準文字とそれ以外のフォントの文字商標がある。

 

 

ロゴと文字とどちらで登録したほうがいいのか?

ロゴ商標と文字商標、どちらで登録するのが有利か?【商標登録NOW】

http://www.ryupat.com/itiran/trademark-standard/

標準文字制度について | 商標について知る | 商標登録なら「スマート商標」

→実際の使われ方に即して登録するのがよい。標準文字で文字商標として登録した場合に、他社の同一名称のロゴ商標を阻止することができない場合がある。もちろん、文字、ロゴなど多種類で登録すればするほど他社を阻止できる可能性は高まる。ただ、同一分類で同一名称であるならばそれだけで阻止できるのではないかという気はする。

今回の場合、そもそも登録する意味は、他社が同じ名前の商品を出さないようにすることだが、それは文字商標として登録すれば効力はある程度ありそう。他社がこちらの標準文字による表記を全く使わないで商売をするということは考えにくい。

また、他社が同一名称で類似ロゴで商標登録だけしてこちらの使用を妨害するとか権利の使用料を求めるということになるのは、起こり得ることではあるが、すぐにはカモにはならないだろうから、ロゴとかが決まったときにまた申請するのでよさそう。

もちろん、ロゴのフォントを決めてしまってそこから変えないのであれば、それで登録するのがベター。

 

 

アルファベットの大文字小文字は関係あるか?

アルファベットの商標は大文字と小文字どちらで登録した方がいいでしょうか? | 商標登録、出願の手続きを弁理士が申請代行 「商標登録ファーム」 | J-star国際特許商標事務所(東京)

→関係ない

 

 標準文字での出願書類サンプル

http://www.jiiigifu.jp/p_form/bm01hs.pdf

 

 

費用

出願時にかかる費用

商標登録出願

3,400円+(区分数×8,600円)


途中の審査がすんなりいかなかったときにかかる費用

(4)商標

1)審判(再審)請求

15,000円+(区分数×40,000円)

2)商標(防護標章)登録異議申立

3,000円+(区分数×8,000円)

3)判定請求

40,000円

4)審判又は再審への当事者の参加申請

55,000円

5)審判又は再審への補助参加申請

16,500円

6)商標(防護標章)登録異議申立の審理への参加申請

3,300円

 

審査が通って権利を有効かするために登録する際にかかる費用(権利は10年間有効で、10年後に更新料をまた支払う)

商標登録料

区分数×28,200円

雑知識

インストーラとかで、ファイル名がx86となっているのと、amd64となっているののどちらをえらんだらいい?

x86Intel,AMD問わず32ビット版のプログラム
AMD64Intel,AMD問わず64ビット版のプログラム

 

ROS概要

ミドルウェアubuntu, win, osx, android, 組み込み系で動く

2015年の情報で5000パッケージ。XML-RPCTCP, UDPで接続。

 

 

 

代表的パッケージ

・SLAMを含むナビゲーション

・moveitでのモーションプランニング機能

OpenCVやPointcloudLibraryなどのライブラリと密に結合した各種画像処理、点群処理、認識パッケージがあり

・gazeboによる動力学シミュレータ、rviz等の可視化ツール

・音声系は弱いかも

・対応センサやロボット、要素となるハードウェアが豊富。PLCとかもある

・状態遷移マシンsmach

機械学習でscikit-learn、深層学習ならchainerかtensorflow

・二足歩行はロボット側のAPI

・対話処理はこれという定番はない。一応日本語対応のrospeexはあるが、試作的

 

 

point cloud libraryは、googleトヨタなども財団に協力して、提供されているライブラリ  BSDライセンス

 

ROS2

基本はubuntuだけCIツール(Jenkins)でテストされていたのが、 Ubuntu Xenial, OS X El Capitan as well as Windows 10までになる。

言語は、C++11だったのがC++17対応になったり、Python2だったのがPython3.5になったりする。接続がDDSになる。

ROS1.xでは、TCP,UDPを使った独自規格の通信だが、無線など通信の不安定な状況ではQoS(Quality of Service)の機能が無いので動作の保証がされない。リアルタイム通信もサポートされていない。今後採用されるDDSなら、QoSの確保とリアルタイム通信が可能。

http://design.ros2.org/articles/why_ros2.html

ROS 2はじめました - SSSSLIDE

この辺をみると、マルチロボット、組み込みシステムとの親和性?の向上(ベアメタル(non-OS)マイコンとの通信が容易?)、リアルタイム性、通信のクオリティ保証、プロダクトのライフサイクルマネジメントを考慮した何らかのモデル管理システム?を強化するっぽいように書いてある。

ROS1のシステムとの間はブリッジを介して通信。

 

Navigationの技術

move_baseにふくまれる、大域的経路計画はA*とダイクストラ法。局所的動作計画はDynamicWindowApproach。

gmappingにふくまれる、地図生成は、Rao-Blackwellized Particle FilterによるGrid-based SLAM。

AMCLの自己位置推定は、アダプティブモンテカルロ法。パーティクルフィルタを用いたモンテカルロローカリゼーション

 

Cf.モンテカルロ法

 

MoveIt!のアルゴリズム

LBKPIECEというアルゴリズムだが、RRTConnectも。

 

rosrubyとかrosrustとかやってる人もいる。