改め Objective Technician

はぐれ技術者のやりたい放題

ナイスペ改造

2006-06-20 18:17:26 | ヨーヨー
かなりマニアックな内容なので、お暇な方はどうぞ。



ナイスペ改造とは、

「もともと金属スペーサーが入ってたけどそれだと戻りが悪いから、削って幅を調整できるナイロンスペーサーと取り替えてさらにアクセル(軸)も削ってギャップ(溝)を細くして戻りを良くし、ループしやすいレイダーに改造する」こと。

レイダーとはヨーヨーの機種。ボールベアリングを搭載している。

ファイヤーボールもボディはレイダーと同じだけどボールベアリングではなくナイロンベアリングになってる。レイダーよりもアクセルが若干太くて長い。

ファイヤーボールフェチである自分はレイダーではなくファイヤーをナイスペ化することが多い。この場合、ファイヤーのアクセルをレイダーのものに取り替える。


  

左で2つあるのが金属スペーサーで、これでボールベアリングを挟んでいる。

右の図が、代わりにナイロンスペーサーを入れたとこ。


ただナイロンスペーサーと取り替えただけだと溝が広くて戻りは悪いままだから、紙やすりで削って幅を狭くする。

上のが、もともとのナイスペ。下のが、削って幅を狭くしたナイスペ。


ボディに入れると、削ってないもの(左)は、削ったもの(右)よりもスター(ボディについてるギザギザ)からはみ出してるのが分かる。スターにギリギリ隠れるぐらいまで削るのがいい。
 

そして、ボディの溝を狭くするためにアクセルを金やすりで削る。

コレをやらないでむりやりボディを締めようとするとキャップが割れる。


なぜかこのことを知らないプレイヤーが結構いて、「ナイスペ改造は危険。ヨーヨーを1,2個壊す覚悟でやらないと出来ない」などと言われている。


削ったあとでボディを締めると。ちょうどいいギャップとしては下のヨーヨーぐらいになる。上のは初期状態。


ストリングは、綿と化学繊維が半分ずつで6本よりのスリック6がいい。
綿100%だとすぐ切れて危ない。

これでストリングプレイは出来なくなるが、ルーピングのやりやすさとスリープの長さを両立させた素晴らしい2A用ヨーヨーになる。

さらにベアリングのオイルを抜くと、消耗が早いけどかなり長いスリープが出来る。

最初からノンオイルでしかも高精度なベアリングもある。

ただ、この改造はセッティングが本当に微妙で、一つ一つ同じものは作るのがかなり難しい。ツーハンドルーピングだと、左右でヨーヨーのフィーリングを同じようにするのが大変。


でも最近、スペーサーではなくベアリングの幅を細くしたものが発売されて、いままでの金属スペーサーをそのまま入れればナイスペレイダーとほとんど同じフィーリングにできるようになった。


こっちは規格品だからばらつきがなくて実に安定している。




…だれか一緒にヨーヨーやろうよ…。

こんな資格

2006-06-19 23:34:40 | ムダ話


小学校5年生のときに取得した資格。


日本給食総連規約では、給食に対しての資格は4級から7段までが定義されていて、年に3回秋田県にて行われる試験によって資格が授与される。


現行の制度では高校生以上になると試験を受ける権利が失効してしまうため、現在の受験制限を緩和するために、大学でも給食制度を取り入れるよう各地方支部(各都道府県の県庁所在地に設置)と、日本給食総連理事 給 食太郎 氏宛に書簡で申請中である。


しかし、給食総連の連絡会(年1回、秋田県にて開催)が今年は七大戦と日が重なるために出席できない。
早いうちに代理人を立てて委任を行わなければいけない。

尽き果てた。

2006-06-18 05:47:37 | 陸上競技
昨日の朝から続いてる原因不明の右腹筋の痛みが激しくなった。


幅跳び二本目で変な踏み切り方して痛めた左足首周りの筋が、後になってさらに痛みだしてまともに歩けない。

なんか、のども変。


さらに3種目出ただけなのに疲れすぎて眠れない。




でも変だなぁ…。毎日やってるのになぁ…コレ…





ざばざばざばざば

ガリガリガリ


ぐふっ


コリコリコリコリ

ブルブルブルブルブルブル

北大戦

2006-06-17 19:10:43 | 陸上競技
6月17日(Sat) 北大戦 宮城野原 快晴 暑


棒高跳:3m10 3位
(助走距離16m20、8歩、グリップの高さは3m40ぐらい)

3m30の一本目で体は越えてたのにポールで落としちゃったのが悔しい。

失敗ジャンプは、ポールが立たないかポールでバーを落としたかのどっちかだった。

今度は助走を12歩にしてグリップを上げてやってみよう。

七大戦は3m50を跳びたい。


走幅跳:6m53 +2.7 2位
(助走距離32m50、16歩)

棒高跳で9本も跳んでしまったので、二本目以降エネルギー切れしてしまった。

助走16歩が長く感じてラスト4歩で落ちないように無理矢理テンポアップしてた。

もっと楽に駆け上がってく感じが欲しい。

高さは、まあまああったと思う。

もっといっぱい走って今シーズン中に6m70跳びたい。


110mH:19"10

110mH初レース。

19秒もかかったけど、あれほど「3歩で走れない」と悩んでたのがウソみたいに8台目まで3歩で走れたことが嬉しい。

1台目までが10歩になったり逆さまだったりブレたり浮いたり縮んだりはみ出したり伸びたり引っ掛けたりと、修正点だらけだから七大戦では17秒台を目指す。

とにかく出場して良かった。


今まで北大戦のことばっか考えてて、一週間後の総体までの調整プランが決まってない。

後で調子がガクンと落ちるのを覚悟で一週間後までピークを持続させてみるか、それとも一回練習量を増やして調子を落としてから超過回復を狙って合わせるか。

練習の一環として当日を迎えるしかないような体調になったとしても、ただ跳んで帰ってくるようなことはしたくない。

大真面目です

2006-06-16 21:01:08 | 陸上競技
明日の目標

棒高跳:3m30
走幅跳:6m50
110mH:16秒台


なんか「棒高出るの!?」ってよく言われますが、自分は大まじめです。


不安要素はスポーツAのバレーボールでやっちゃった右親指の突き指。

あとは痛めてる右くるぶしをハードルにぶつけることが怖い。


どっちも肉が痛いわけじゃないから試合になったら痛いことなんて忘れちゃうだろう。



関係ないけど昨日公開したソースに一ヶ所バグが見つかりました。

プログラムを実行した結果、あなたの身に何が起こっても一切責任は負いかねます。


合法的フライング

2006-06-15 20:41:46 | 勉強
プログラミング演習の次の課題に手をつけた。

dijkstra法での最短経路アルゴリズム。


隣接リストにさらにあんなものやこんなものを連結させた。

0から組み上げた完全にオリジナルのグラフデータ構造。


コンパイラによってはmalloc()関数がNULLポインタを返したのに気づかないでNULLポインタに操作を加えると,皿に乗ったギョウザの皮が一斉に開くことがある。

さらにfopen()関数が失敗すると、まれに寄せ鍋が離れていくことがある。


確保していないメモリにアクセスしようとしてセグメンテーションエラーが発生した場合プログラムがクラッシュして、世界中のアジが開きになる可能性があるので注意しなければいけない。

#include <stdio.h>
#include <stdlib.h>
#include <tring.h>

#define F 10000

struct node{
  int code;
  char name[20];
  int rabel;
  unsigned fix:1;
  int *distance;
  int *link;
  int stanum;
  int root;
  int step;
}*data;

int N;

int datascan(void);
void showdata(int start);
void dijkstra(void);

int datascan(void)
{
  int i,j,buf1,buf2,dis,start;
  char buffer[20];
  long loc;
  FILE *fp;

  if((fp=fopen("saitan.txt","r"))==NULL){
    printf("saitan.txt を開く際にエラー発生¥n");
    exit(1);
  }

  for(i=0,j=1;j>0;i++)
    fscanf(fp,"%d %20s",&j,buffer);
  
  N=i-1;
  loc=ftell(fp);

  if(fseek(fp,0,SEEK_SET)){
    printf("シークエラー¥n");
    exit(1);
  }

  data=(struct node *)malloc(sizeof(struct node)*N);
  if(!data){
    printf("メモリの確保に失敗しました。¥n");
    exit(1);
  }

  for(i=0;i<N;i++){
    fscanf(fp,"%d %20s",&data[i].code,&data[i].name);
    data[i].code--;
    data[i].rabel=F;
    data[i].fix=0;
    data[i].stanum=0;
    data[i].step=F;
  }
  if(fseek(fp,loc,SEEK_SET)){
    printf("シークエラー¥n");
    exit(1);
  }


  for(;;){
    fscanf(fp,"%d %d %d ",&buf1,&buf2,&dis);
    if(!dis)
      break;
    data[buf1-1].stanum++;
    data[buf2-1].stanum++;
  }
  for(i=0;i<N;i++){
    data[i].link=(int *)malloc(sizeof(int)*data[i].stanum);
    data[i].distance=(int *)malloc(sizeof(int)*data[i].stanum);
    if(!data[i].link || !data[i].distance){
      printf("メモリの確保に失敗しました。¥n");
      exit(1);
    }
    data[i].stanum=0;
  }
  fscanf(fp,"%d ",&start);

  if(fseek(fp,loc,SEEK_SET)){
    printf("シークエラー¥n");
    exit(1);
  }

  for(;;){
    fscanf(fp,"%d %d %d ",&buf1,&buf2,&dis);
    if(!dis)
      break;
    data[buf1-1].link[data[buf1-1].stanum]=buf2-1;
    data[buf1-1].distance[data[buf1-1].stanum]=dis;
    data[buf1-1].stanum++;
    data[buf2-1].link[data[buf2-1].stanum]=buf1-1;
    data[buf2-1].distance[data[buf2-1].stanum]=dis;
    data[buf2-1].stanum++;
  }
  if(fclose(fp)){
    printf("ファイルを閉じる際にエラー発生¥n");
    exit(1);
  }
  return start;
}

void showdata(int start)
{
  char **buffer,name[20];
  int i,r,n,j,k;

  scanf("%d ",&j);

  for(k=0;k<j;k++){
    gets(name);
    for(i=0;i<N;i++){
      if(!strcmp(name,data[i].name)){
        n=i;
        r=n;
        break;
      }
    }
    if(i==N){
      printf("一致する駅名がありません。¥n");
      exit(1);
    }

    buffer=(char **)malloc(sizeof(char *)*data[n].step+1);
    if(!buffer){
      printf("メモリの確保に失敗しました。¥n");
      exit(1);
    }
    for(i=0;i<data[n].step+1;i++){
      buffer[i]=(char *)malloc(20*sizeof(char));
        if(!buffer[i]){
          printf("メモリの確保に失敗しました。¥n");
          exit(1);
        }
    }

    printf("%sから%s:%d km¥n",data[start].name,data[n].name,data[n].rabel);
    strcpy(buffer[0],data[n].name);
    for(i=1;i<data[n].step+1;i++){
      strcpy(buffer[i],data[data[r].root].name);
      r=data[data[r].root].code;
    }

    printf("path :");
    for(i=data[n].step+1;i;i--)
      printf("- %s ",buffer[i-1]);
    printf("¥n");

    for(i=0;i<data[n].step+1;i++)
      free(buffer[i]);
    free(buffer);
  }
}

void dijkstra(void)
{
  int i,min=0;

  for(;;min=0){
    while(data[min].fix){
      min++;
      if(min==N)
        return ;
    }

    for(i=min+1;i<N;i++)
      if(!data[i].fix && data[min].rabel>data[i].rabel)
        min=i;
    data[min].fix++;
    for(i=0;i<data[min].stanum;i++){
      if(data[data[min].link[i]].fix && data[data[min].link[i]].step+1>data[min].step)
        data[min].step=data[data[min].link[i]].step+1;
      if(data[data[min].link[i]].fix && data[data[min].link[i]].rabel+data[min].distance[i]==data[min].rabel)
        data[min].root=data[min].link[i];
    }

    for(i=0;i<data[min].stanum;i++)
      if(data[data[min].link[i]].rabel>data[min].rabel+data[min].distance[i])
        data[data[min].link[i]].rabel=data[min].rabel+data[min].distance[i];
  }
}

int main(void)
{
  int i,start;

  start=datascan()-1;

  data[start].rabel=0;
  data[start].step=0;

  dijkstra();

  showdata(start);

  return 0;
}


練習日誌

2006-06-13 20:17:54 | 陸上競技
昨日の分
6月12日(Mon)晴 暖 利府

自転車18Km(約50分)
w-up

ポールワーク
突っ込み、棒幅跳び、振り上げ

足合わせ(8歩、15m60)
グリップは3m30ぐらい

跳躍練習
2m50 2m70 3m00 3m10 3m20

c-down

自転車18km


北大戦の前にタータンのピットで練習しといて良かった。
助走距離とかグリップの高さとか助走の速さとか跳んでるときの感覚とか、分からなくて本番でボロボロになるところだった。

評定(土)とは全然違う。

最初は慣れなくてポールが立たなかったけど、何回もやってるうちに安定してきた。

Y本先輩ありがとうございました。


今日から試合まではバネため期間にあてる。



棒高跳のヒントにとビデオを色々探してたらこんなの見つけた。

1分35秒あたりで笑った。

かなりカッコいい。

パンク修理

2006-06-11 07:22:56 | 自転車
昨日の朝、後輪にネジが食い込んでタイヤがパンクしていた。

それでも空気はあんまり漏れてなかったからネジが刺さったまま評定に乗って行った。


タイヤにネジとか釘とか刺さっててもイタズラとは限らなくて、釘やネジが転がってるのをタイヤで踏みつけたたけで突起部が起き上がって自然に刺さることはよくある。今回もたぶん昨日気付かないうちにそうなったんだと思う。


パンク修理で一番手間取るのが、タイヤをホイールから外す作業。かなり力がいる。


今回みたいにネジが刺さってるときはパンク位置が分かってるけど、いつもはチューブをタイヤから外した後に軽く空気を入れるか水の中に入れるかしてパンク位置を特定しないといけない。見た目じゃ絶対分からない。



パンク位置を見つけたら、紙やすりで周辺を少しだけ粗くしてゴムのりを薄く塗る。
薄く広く塗るとこが重要。いっぱい塗ると大変なことになる。


そして3分待ってからパッチを貼る。3分待つところが重要。待たないでパッチを貼ると大変なことになる。
ゴムのりは接着剤じゃない。




最後に、チューブをタイヤに入れてタイヤをホイールにかぶせるのがまた一苦労。これも力がいる。


終わって自転車にまたがってみたところなんか前輪も空気圧が低い気がして、顔を近づけると「シュー…」という音が。



えぇー!!前輪も!?




イタズラの可能性急上昇。


治安があまり良くない。