2018年12月21日

アルペジエーターの動作不良

偶に発生していたアルペジエーターの動作不良の原因は、アルペジエーターのパターンを設定するデータが負の値に変換されて発生するバグだった。 

WS001501.JPG

何故ここで−1していたのか? 原因は不明だが、microSDカードを扱う試行錯誤の段階で、コードを修正し忘れていたのだろう。
posted by Yasuski at 01:13| LaVoixski

2018年12月19日

シーケンサーに「アルペジエーターのアドレス読み出し機能」を実装する(2)

アルペジエーターのシーケンス制御を行う計画は、専用のシーンメモリーを追加して、仕組みとしてはほぼ固まってきた。

WS001495.JPG

WS001496.JPG

WS001497.JPG

シーケンサからの出力を観測したところ、フレーズを選択するLSBは正常に動作している模様だが、何故かモードを選択するMSBのビットが常時オン状態になって切り替えが効かない。

試しにMSBの値を"L"に固定したところ、モードが正常に選択されていたことから、仕掛けの構造自体には問題はないと思われる。

不具合の原因は不明だが、シーケンサのみ単体でシステムを走らせて出力を監視して動作の検討を行うことにした。

WS001498.JPG

設定値を有効化するため、トリガーで駆動するシーケンスのルーティン間に項目を偏在させた結果、ようやくモードの切り替えを確認することができた。 

ただ、現在試験用に組んでいるシーケンスは60ステップとパターンの変化がめまぐるしく、テンポをかなり遅く設定する必要がある。 



実用面を考えた場合、ステップ数を管理する方向で運用を検討したほうが良いだろう。

WS001494.JPG

WS001499.JPG

WS001500.JPG

posted by Yasuski at 05:48| LaVoixski

2018年12月18日

シーケンサーに「アルペジエーターのアドレス読み出し機能」を実装する

テルミンのシーケンサーに「アルペジエーターのアドレス読み出し機能」を追加して、フレーズに合わせた分散和音を展開することを思い付いた。 

64ステップから128ステップのアドレス記録バンクを使えば、かなり自由度の高い伴奏機能が実現できるはずだ。

WS001492.JPG

まず組み込んでみたのは、シーケンサーからピッチを読出す代わりにアルペジエーターのアドレスに対応する整数を呼び出す機能。 動作の実証は行っていないものの、これは複雑にパターン化された伴奏を効率よく構成するために採り得る有効な手段のひとつと思われる。

48373324_2172993349397778_8871095838529552384_n.jpg

ひとまず、コンパイルだけは通せた。 mode3の”0番地”が浮いてしまうことを避けるために、”@”を残して条件分岐の段階で”0番地”のアサインを排除している。

48424804_2172993502731096_3359744970524196864_n.jpg

データの扱いは、単純に mode3 = inputString[n]; とはならず、アルペジオのパターン選択込みで制御を行うために、inputString[n]に対応させた条件分岐を設定することになる。 実際にはASCIIコードでアドレスナンバーを充てているが、アドレスをフルに活用するには予め32×3パターンの仕込みが必要だ。

48414674_2172993839397729_4110494580871266304_n.jpg

ただし、ピッチのマニュアル設定を行う仕様のメモリーCHはエンコーダーで設定した非整数からピッチデータを読み取るために、これが実際に使いこなせるかは微妙なところだ。 現実的に使いこなせそうな設定として、16×3パターンを選択した。 

逆にフレーズの選択肢を増やすためには、アルペジエーターの昇降パターンを固定することになる。 アルペジオのピッチにゆらぎを与えたい場合は、ピッチのマニュアル設定という選択もアリだろう。 

ただし、テルミンは主旋律が否応なしに揺らぐ楽器なので、あまり有効な効果は期待できそうにない、、、。実質的には設定された全てのパターンを使用する可能性は低く、どちらかというと、マイナーとメジャーの分散和音を切り替えるような使い方が主流なりそうだ。

運用面から考えた場合、伴奏を担当するアルペジオはシーケンスがスタートするタイミングが判り難い機能なので、スタート前のカウントダウン表示を行う等の対策が必要になってくる。

48382381_2172994106064369_4231971262617878528_n.jpg

で、実際に楽器を動かしてみたところ、一回目の試験は失敗に終わった。

原因はアルペジエーターを駆動するトリガーの不具合が想定されるが、複合的にトリガーを掛けるために準備したオブジェクトを設置する階層の問題なのかもしれない。

ここでシーケンサー/アルペジエーターの構造をおさらいをすると、システムの駆動は一定のインターバルで処理を実行する metro という関数を使ってデータアレイに格納されたASCIIコードを読みだすステップの進行を管理している。

現状は、シーケンサとアルペジエーターのオブジェクトを分離しているが、失敗に対する解決策としてアルペジエーターのオブジェクトを「アルペジエーターの設定をシーケンス制御するオブジェクト」に内包する方法が考えられる。 

ただし、その場合は専用のトリガージェネレーターを追加しなければならないが、その実現にはMCUの処理能力の限界が問題になってくる。

WS001493.JPG

処理の実行されるステップを中心にトリガー機構の配置を再考した結果、シーケンサーの内部にアルペジエーターを内包する形にプログラムを変更した。

今回は、既に実装しているアルペジエーターとは別に、シーケンスモード選択時(mode2 == 8)のアドレス#1(mode5 == 1)にアルペジエーターの機能(制限付き)を組み込んでいる。 arp2で、Arpeggiatorの再生モードを設定する。 実験では適当なシーケンスパターンを設定したために明確なアルペジエーターの切り替え動作の確認には至らなかったが、ひとまずアルペジエーターをシーケンス上に走らせることが可能な状態には到達できた。 

実際に楽器を運用してみると、想像していた以上に複雑な分散和音の構成を展開出来ることが判明したが、その複雑さ故に事前の仕込みが大変になりそうだ。 アルペジエーターのフレーズの吟味は当然として、シーケンス・パターンの展開がアレンジの鍵になるだろう。

その後、動作を正確に検証するために、新たなシーケンスファイルを書き込んで3回目の試験を行ったところ、面妖な反応が出たためにコーディングをやり直すことになった。

結果として、今回行った階層化によってトリガークロックの扱いを失敗していることが判明したが、とりあえずパターンを羅列しているだけのシーケンスファイルにも改装が必要と感じた。  

その後に行った4回めの実験では、発想を転換してトリガー機構を条件分岐を絡めて並列化を行うことで、正常にトリガーをコントロールすることに成功した。 ただし、今度はクリックノイズが発生する音声面のバグが出現してしまった。

実験の結果、パラメーターの不備など新たな問題が表面化してきたが、正攻法で詰めればなんとかなりそうな感触がある。 完成まであとひと踏ん張りといったところだろうか。
posted by Yasuski at 03:40| LaVoixski

2018年12月03日

アンテナ端子の検討を行う

SMAコネクタの強度が心配になってきたので、一回り大きなコネクターの規格を調べていたところ、TNCという規格を見つけた。 日本ではあまり馴染みのない規格で、Wikiの日本語版には項目そのものが存在しない。

tnc0.jpg

SMA側をアンテナ基台のGFRPに埋め込むことになるが、これも強度が少々心配。

tnc.jpg

シャシ側の基台にはこのコネクタを使用する。 取付孔は12φとなる。

TNCmaleToFemale.jpg

アンテナ用エクステンションのシャシ側に取り付けるコネクタ。 7/16というネジの規格は約11.1mmだが、12mmの真鍮パイプの内径にネジを切ることが出来るか?

81dfGgnXQPL._SX425_.jpg

こちらはエクステンションのアンテナ側にねじ込むコネクタで、アンテナの基台となる。

sma-female-tnc-female-coax-adapter.jpg

このコネクタのSMA側をアンテナの基台となるGFRPに取り付ける。

TNC.png

ネジの規格等寸法の詳細。
posted by Yasuski at 10:38| LaVoixski

2018年12月02日

ブルーな筐体に基板と端子等を仮実装した

IMG_8869.JPG

部品の仮実装を終えた。 搭載する機能を限定すればなんとかなるレベルではあるが、やはりこのサイズはタイトに過ぎる。 Pitchアンテナの傾斜は仮止めだったSMA端子を増し締めしてある程度修正できたが、如何せん強度が心配。

IMG_8870.JPG

Neutrikのパネルマウントにはadatアウトに用いる予定のHFBR系列のオプティカル送信素子を組込んでいる。 サンプリングレート選択用のデジタルスイッチは、現状の位置関係ではクリアランスの確保が難しい。

IMG_8871.JPG

1450N系列のケースには、専用に設計した80mm仕様の基板を使用する。 第一レイヤーの青い基板にはオシレーターとRGBロータリーエンコーダを実装していて、この基板に黄色いMCU基板をスタックする。 オーディオの出力は、スロットに挿入した100mm規格のDAC基板から行う。 DACへの信号ラインはリボンケーブルを使用するが、これの取り回しが難しい。

IMG_8872.JPG

新旧のモデルを比較する。 何れも幅160mmのモデルを使用している。 アンテナは新規に設計した真鍮タイプのものを採用する予定だが、比較用にチタンパイプを使用したモデルも製作しておこう。

IMG_8876.JPG

1450系列にオプションを積むことを考えた場合、幅220mmのモデルを使用すべきだろう。

IMG_8875.JPG
posted by Yasuski at 19:28| LaVoixski

2018年12月01日

補助電源の製作

6pin対応の補助電源を製作した。

IMG_8859.JPG

Hirose/6pからの4chアウトと、ミニジャックから3p出力が可能。

IMG_8857.JPG

アンプ側に端子を追加して、4ch送信を行えるようにする予定。
posted by Yasuski at 13:26| MusicalInstruments

2018年11月25日

アンテナの試作

真鍮パイプを使ったアンテナの試作を行った。

IMG_8842.JPG

今回は、Pitch Antenna側の構成を工夫してシールド機能をもたせたエクステンション部を12φの真鍮パイプで試作している。

IMG_8838.JPG

アンテナの接合部には、SMA規格のL型中継コネクターを使用した。

IMG_8839.JPG

仮組み段階で中継コネクターのアンテナ側の強度に問題が発見されたので、ハンダ付けによる補強を行っている。

IMG_8844.JPG

アンテナ端子の絶縁には、今回もGFRPの丸棒を使った。

IMG_8843.JPG

GFRP製の基台にSMAコネクタの規格でネジを切ってみたが、素材に問題があるのか径が大きくなり過ぎて上手くいかなかった。

IMG_8845.JPG

グランド電位にシールドした12φのパイプの両端には、10φのアルミ丸棒にネジを切って加工したアンテナ端子の基台を圧入している。 今回は試験的に15mmのものを圧入したが、SMA端子の規格を考えると10mmでも問題は無さそうだ。

次回は孔開けの煩雑さを回避するために、10φ/肉厚2mmのアルミパイプを使ってアンテナ基台を作る予定。
posted by Yasuski at 14:52| LaVoixski

2018年11月22日

基板の仮組み

IMG_8828.JPG

ケースに孔を開けて基板の仮実装を行ってみたが、予想通りとはいえ、横方向のスペースに余裕が無いタイプのケースは補機類の設置が難しい。

IMG_8829.JPG

基板をスタックする場合は、ソケットのサイズが影響して厚み方向のクリアランスの確保が厳しくなってしまう。 裏蓋はなるだけオープンにはしたくないのだが、、、。

IMG_8830.JPG

小さい方の筐体には、化粧板を取り付けている。 リファレンスオシレーターの調整孔の加工が難しい。

IMG_8831.JPG

想像していた以上に基盤を取り付けるスペースに余裕がなかった。

基板を一枚「型紙」にして、孔開けを行っている。


IMG_8835.JPG

「型紙」の扱いが悪かったために、VRTの調整孔がズレてしまった。 化粧板はそれをリカヴァーするための方策だが、割と良い感じに仕上がっている。

IMG_8834.JPG

MCU基板をスタックした場合、厚み方向の余裕が無くなってしまう。 レイヤーをズラしてDAC基板を取り付けるのだが、これもギリギリのライン。 ケースのサイズは、1405K1601 と 1405N2201 に限定すべきか。

IMG_8837.JPG

これだけの余裕を持たせても、クリアランスはぎりぎりになりそう。

部品を発注する前に、物理的な限界を洗い出す必要がある。
posted by Yasuski at 21:46| LaVoixski

2018年11月17日

基板が届いた

IMG_8819.JPG

MCU系は黄色、オシレーター系は青色、オーディオ系は緑に統一している。

IMG_8820.JPG

シールド効果を狙って出来るだけ片面に部品を配置しているのだが、チップの交換に手間がかかってしまうのが残念。

IMG_8821.JPG

MCU基板はスペースに余裕ができたので実装はかなり楽になった。

割り切って、クロック系の取り回しを合理化したほうが良いかもしれない。

この面は裏側になるので、シルク印刷にはもう一工夫が必要。

IMG_8823.JPG

100mm規格のオーディオボードには、DiodeClipperを追加した他、取り付け穴を設ける少変更を行っているが、基本的な構造はあまり変わっていない。

IMG_8824.JPG

100mm規格のMCU基板。

Hammond/1450Nシリーズにスロットインを行えるが、想定しているのは1450Kシリーズのパネルへの直付。75mm規格の基板と組み合わせて運用する。

IMG_8822.JPG

75mm規格の基板。

青基板のテストを優先して行おう。

IMG_8825.JPG

オールインワンタイプのID-292/1450Kシリーズに対応した基板。

緑はオーディオ機能を拡張するためのAddOnボード。 ディストーション回路は、DiodeClipperタイプに変更している。

基盤毎にオシレーターを分散させることも可能。


IMG_8827.JPG

検品後にFPGAを実装してプログラムを行った。 FPGAの実装に慣れてきたので、1枚5分程で作業を完了できるようになった。

IDEの起動後にライセンスの失効が発覚したが、再発行は簡単に行えた。

WS001487.JPG
posted by Yasuski at 03:28| LaVoixski